Loading...
{
(set: $test_mode to false)
(set: $menu_quit to false)
(set: $menu_fullscreen to true)
(set: $currentGameDate to "")
(set: $think_time to 0)
(set: $examine_time to 0)
(if: $die_next_screen is true)[(set: $die_next_screen to false)(go-to: "Death Sigh")]
(if: $initial_load is "loaded")[
(set: $previous_passage to $currentPassage)
(set: $currentPassage to (passage:)'s name)
(if: $ReturnFlag is "RETURNING")[
<script>
loadPermSettings();
loadAchieve();
loadPuzzles();
savegame("MenuSave","currentPassage");
</script>
](else:)[
<script>
var currentPassage = geth("currentPassage");
if(!currentPassage.includes("Menu") && !currentPassage.includes("Transform") && !currentPassage.includes("Drink")){
saveraw("inv_commands","");
}
</script>
]
]
}{
<script>hideHUD("skip-intro");</script>
(if: $print_title is true)[(set: $print_title to false)]
<div id="titleBox">
<img id="titleImage" src="./silenceImages/SilenceTitleAct3.png" alt="A Dream of Silence">
</div>
<div id="menuBox">
<div class="menu_spacing_safe">|Restart>[Begin]</div>
<div class="menu_spacing_safe">|menu_restore>[Resume]</div>
<div class="menu_spacing_safe">|menu_feats>[Feats]</div>
</div>
</div>
(display: "Act 3 Tags")
<script>
var acc = document.getElementsByClassName("accordion");
var i;
for (i = 0; i < acc.length; i++) {
acc[i].addEventListener("click", function() {
this.classList.toggle("activeAccordian");
var panel = this.nextElementSibling;
if (panel.style.maxHeight) {
panel.style.maxHeight = null;
} else {
panel.style.maxHeight = panel.scrollHeight + "px";
}
});
}
</script>
<style>
tw-passage { background-color: transparent !important; border: none !important; }
tw-story { margin: 0 auto 0 auto; padding: 0; }
tw-passage { text-align: left; }
html, body {
background: black !important;
color: white !important;
}
</style>
(if: $menu_fullscreen is true)[(if: $Fullscreen is true)[<script>setFullscreen("ON");</script>](else:)[ <script>setFullscreen("OFF");</script> ] ]
(set: $no_menu to true)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
(set: $in_intro to false)
(set: $learnDisplay to false)
(set: $justWon to false)
<script>changeBackground("");</script>
}(display: "menu_menu")
<div class="menu_frame"></div>{
(set: $selected_item to "")
<script>
seth("ExportMode",false);
function nextPage(){
var savePage = parseInt(getHarloweVariable("SavePage"), 10)+10;
setHarloweVariable("SavePage",savePage);
saveraw("SavePage",savePage);
refreshSaveDisplay();
}
function prevPage(){
var savePage = parseInt(getHarloweVariable("SavePage"), 10)-10;
setHarloweVariable("SavePage",savePage);
saveraw("SavePage",savePage);
refreshSaveDisplay();
}
function displayResume() {
var menuSave = geth("MenuSave");
if(menuSave != "DELETED") {
var to_append = "";
to_append += " <div class='list_spacing'><a class='clickable' onClick='resumeGame();'>Resume Current Game</a> </div>";
$(".menu_frame").append(to_append);
}
}
function displayAutosave() {
var autosaveName = getAutosave();
var ExportMode = geth("ExportMode");
if(autosaveName != "DELETED"){
var to_append = " <div class='list_spacing'>";
to_append += "<b>Autosave:</b> " + autosaveName;
if(ExportMode) to_append += " <a id='loadauto' onclick='exportGame(this)' class='select-item'>Export</a>";
else to_append += " <a id='loadauto' onclick='loadAutosave()' class='select-item'>Load</a> ";
to_append += "</div>";
$(".menu_frame").append(to_append);
}
}
function displayExportMode() {
var ExportMode = geth("ExportMode");
var to_append = "<div style='position: fixed; left: 5px; bottom: 5px;'>Export Mode: ";
if(ExportMode) to_append += "<a id='export-text' onclick='toggleExport()' class='select-item'>ON</a> ";
else to_append += "<a id='export-text' onclick='toggleExport()' class='select-item'>OFF</a> ";
to_append += "</div>";
$(".menu_frame").append(to_append);
}
function toggleExport(e){
var ExportMode = geth("ExportMode");
if(ExportMode) seth("ExportMode",false);
else seth("ExportMode",true);
refreshSaveDisplay();
}
function refreshSaveDisplay(){
$(".menu_frame").html("");
displayResume();
displayAutosave();
displaySaves();
displayExportMode();
}
function displaySaves() {
var seaSaves = getSeaSaves();
var seaDates = getSeaDates();
var ExportMode = geth("ExportMode");
var min = parseInt(getHarloweVariable("SavePage"), 10);
if(isEmpty(min) || isNaN(min)) min = 1;
seth("SavePage",min);
var max = min + 10;
for (var i = min; i < max; i++) {
var to_append = " <div class='save_spacing'>";
to_append += "<div> ";
to_append += "<b>Save "+i+":</b> ";
if(seaSaves[i] == "DELETED"){
to_append += "<i>Empty</i>";
var menuSave = geth("MenuSave");
to_append += "</div>";
to_append += "<div class='saveline-empty'> ";
if(ExportMode) to_append += " <input type='file' id='file"+i+"' name='importfile' onchange='importGame(event)' />";
else if(menuSave != "DELETED") to_append += " <a id='save"+i+"' onclick='saveGame(this)' class='select-item resume-item save-button'>Save</a>";
to_append += "</div> ";
}
else{
to_append += seaSaves[i];
to_append += "</div>";
if(seaDates[i] != "") to_append += "<div class='small-text date-text'>"+seaDates[i]+"</div>";
to_append += "<div class='saveline'> ";
if(ExportMode)
to_append += " <a id='load"+i+"' onclick='exportGame(this)' class='select-item'>Export</a> ";
else
to_append += " <a id='load"+i+"' onclick='startloadGame(this)' class='select-item resume-item save-button'>Load</a> <a id='saveover"+i+"' onclick='saveoverGame(this)' class='select-item resume-item save-button'>Save</a> <a id='delete"+i+"' onclick='deleteGame(this)' class='select-item resume-item delete-button'>Delete</a> <a id='confirmload"+i+"' onclick='confirmLoadGame(this)' class='select-item resume-item' style='display: none; color: #4BB576;'>Confirm Load</a> <a id='confirmdelete"+i+"' onclick='confirmDeleteGame(this)' class='select-item resume-item' style='display: none; color: #FF4F4F;'>Confirm Delete</a> <a id='confirmsaveover"+i+"' onclick='confirmSaveOver(this)' class='select-item resume-item' style='display: none; color: #4BB576;'>Confirm Save</a> <a id='canceldelete"+i+"' onclick='cancelDeleteGame(this)' class='select-item resume-item' style='display: none; color: #FF4F4F;'>Cancel</a> ";
}
to_append += " <br> ";
to_append += "</div>";
$(".menu_frame").append(to_append);
}
var to_append = "";
if(min != 1) to_append += "<a onclick='prevPage()' class='select-item go_west'>Previous Page</a>";
if(min != 91) to_append += "<a onclick='nextPage()' class='select-item go_east'>Next Page</a>";
$(".menu_frame").append(to_append);
}
function saveGame(e){
var num = e.id.replace("save","");
replaceSaveWithMenuSave("Save "+num);
saveraw("Save "+num+"Inv",getraw("inv_commands"));
refreshSaveDisplay();
}
function loadAutosave(){
saveraw("ReturnFlag","RETURNING");
saveraw("inv_commands",getraw("AutoInv"));
loadgame("Autosave");
}
function loadQuicksave(){
saveraw("ReturnFlag","RETURNING");
saveraw("inv_commands",getraw("QuickInv"));
loadgame("Quicksave");
}
function exportGame(e){
var num = e.id.replace("load","");
var title = "Save " + num;
var exportTitle = "Export " + num;
if(num == "quick") title = "Quicksave";
if(num == "auto") title = "Autosave";
var display_title = localStorage.getItem(storagePrefix("Saved Game Filename") + title);
if(display_title.includes("-")) display_title = display_title.substring(display_title.indexOf("-")+1);
var data = localStorage.getItem(storagePrefix("Saved Game") + title);
download(exportTitle+"-"+display_title+".sav",encodeSave(data));
refreshSaveDisplay();
}
function importGame(evt) {
var file = evt.target.files[0];
var reader = new FileReader();
reader.onload = (function(theFile) {
return function(e) {
var num = evt.target.id.replace("file","");
var slotTitle = "Save "+num;
var name = theFile.name.replace(".sav","");
try {
localStorage.setItem(storagePrefix("Saved Game") + slotTitle, decodeSave(e.target.result));
localStorage.setItem(storagePrefix("Saved Game Filename") + slotTitle, name);
localStorage.setItem("saveFlag", "save");
} catch (e) {
alert("error saving game");
}
refreshSaveDisplay();
};
})(file);
reader.readAsText(file);
}
function encodeSave(savecontent){
savecontent = [... savecontent ].map(char => encrypt(char,3)).join('');
savecontent = encodeURIComponent(savecontent);
return savecontent;
}
function decodeSave(savecontent){
savecontent = decodeURIComponent(savecontent);
savecontent = [... savecontent ].map(char => decrypt(char,3)).join('');
return savecontent;
}
function download(filename, text) {
var element = document.createElement('a');
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
element.setAttribute('download', filename);
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
function startloadGame(e){
var num = e.id.replace("load","");
$("#load"+num).css("display","none");
$("#saveover"+num).css("display","none");
$("#delete"+num).css("display","none");
$("#confirmload"+num).css("display","inline");
$("#canceldelete"+num).css("display","inline");
}
function deleteGame(e){
var num = e.id.replace("delete","");
$("#load"+num).css("display","none");
$("#saveover"+num).css("display","none");
$("#delete"+num).css("display","none");
$("#confirmdelete"+num).css("display","inline");
$("#canceldelete"+num).css("display","inline");
}
function saveoverGame(e){
var num = e.id.replace("saveover","");
$("#load"+num).css("display","none");
$("#saveover"+num).css("display","none");
$("#delete"+num).css("display","none");
$("#confirmsaveover"+num).css("display","inline");
$("#canceldelete"+num).css("display","inline");
}
function confirmLoadGame(e){
var num = e.id.replace("confirmload","");
saveraw("ReturnFlag","RETURNING");
saveraw("inv_commands",getraw("Save "+num+"Inv"));
loadgame("Save " + num);
}
function confirmDeleteGame(e){
var num = e.id.replace("confirmdelete","");
savegame("Save "+num,"DELETED");
refreshSaveDisplay();
}
function confirmSaveOver(e){
var num = e.id.replace("confirmsaveover","");
replaceSaveWithMenuSave("Save "+num);
saveraw("Save "+num+"Inv",getraw("inv_commands"));
refreshSaveDisplay();
}
function cancelDeleteGame(e){
var num = e.id.replace("canceldelete","");
$("#delete"+num).css("display","inline");
$("#saveover"+num).css("display","inline");
$("#load"+num).css("display","inline");
$("#confirmdelete"+num).css("display","none");
$("#canceldelete"+num).css("display","none");
$("#confirmsaveover"+num).css("display","none");
$("#confirmload"+num).css("display","none");
}
var alphabet = [
'A','B','C','D','E','F',
'G','H','I','J','K','L',
'M','N','O','P','Q','R',
'S','T','U','V','W','X',
'Y','Z','a','b','c','d',
'e','f','g','h','i','j',
'k','l','m','n','o','p',
'q','r','s','t','u','v',
'w','x','y','z'
];
function decrypt(char,shift) {
if (alphabet.includes(char))
{
var position = alphabet.indexOf(char);
var newPosition = (position - shift);
if(newPosition >= alphabet.length) newPosition = newPosition - alphabet.length;
if(newPosition < 0) newPosition = newPosition + alphabet.length;
return alphabet[newPosition]
}
else { return char }
}
function encrypt(char,shift) {
if (alphabet.includes(char))
{
var position = alphabet.indexOf(char);
var newPosition = (position + shift);
if(newPosition >= alphabet.length) newPosition = newPosition - alphabet.length;
if(newPosition < 0) newPosition = newPosition + alphabet.length;
return alphabet[newPosition]
}
else { return char }
}
refreshSaveDisplay();
</script>
<style> #speed-run-toggle {visibility: hidden; } </style>
(set: $display_resume to true)
(set: $energyDisplay to false)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
(set: $learnDisplay to false)
}{
(display: "Text Colors")
(display: "Populate Feats")
(set: $justWon to false)
(set: $learnDisplay to false)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
(set: $energyDisplay to false)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}{<span id="footer-start"></span>
(set: $in_form to false)
(click: ?return)[(set: $sequence to 0)(go-to: $currentPassage)]
(click: ?returnBase)[(set: $sequence to 0)(go-to: $basePassage)]
(click: ?returnBaseSimple)[(go-to: $basePassage)]
(click: ?returnFromAction)[(set: $target to "")(go-to: $basePassage)]
(click: ?refresh)[(go-to: $currentPassage)]
(click: ?next)[(set: $sequence to $sequence+1)(go-to: $currentPassage)]
(click: ?nextAction)[(set: $actionSequence to $actionSequence+1)(go-to: $currentPassage)]
(click: ?skip)[(set: $sequence to $sequence+2)(go-to: $currentPassage)]
(click: ?skip2)[(set: $sequence to $sequence+3)(go-to: $currentPassage)]
(click: ?skip3)[(set: $sequence to $sequence+4)(go-to: $currentPassage)]
(click: ?skip4)[(set: $sequence to $sequence+5)(go-to: $currentPassage)]
(click: ?prev)[(set: $sequence to $sequence-1)(go-to: $currentPassage)]
(click: ?prev_passage)[(go-to: $previous_passage)]
(click: ?death)[(go-to: "Death")]
(click: ?forestEnd)[(set: $sequence to 0)(go-to: "Wake In The Forest")]
(click: ?returnTomb)[(set: $sequence to 0)(go-to: "The Tomb")]
(click: ?returnSigh)[(set: $sequence to 0)(go-to: "Sigh")]
(click: ?findAstarion)[(set: $sequence to 0)(go-to: "Astarion")]
(click: ?notYet)[(go-to: "Not Yet")]
(click: ?practice)[(set: $sequence to 0)(if: $day is 151)[(go-to: "Darkness")](else:)[(go-to: "Practice Existing")]]
(click: ?timePasses)[(set: $sequence to 0)(go-to: "Time Passes")]
(click: ?escapeFoyer)[(set: $sequence to 0)(go-to: "Hallway Choice")]
(click: ?wait)[
(set: $time to it+1)
(set: $sequence to 0)
(goto: $currentPassage)
]
(click: ?Restart)[ <script>preload(); resetScreen(); checkCurrentMusic(); savegame("MenuSave","RESTART"); window.location.reload(); </script>]
(click: ?loadSavedGame)[<script>goToMenu("Menu_Restore");</script>]
(click: ?menu_menu)[(go-to: "Menu")]
(click: ?menu_restore)[(go-to: "Menu_Restore")]
(click: ?menu_achievements)[(go-to: "Menu_Achievements")]
(click: ?menu_options)[(go-to: "Menu_options")]
(click: ?menu_othergames)[(go-to: "Menu_OtherGames")]
(click: ?menu_hints)[(go-to: "Menu_Hints")]
(click: ?menu_credits)[(go-to: "Menu_Credits")]
(click: ?menu_feats)[(go-to: "Menu_Feats")]
(click: ?quit)[(set: $quit_return to (passage:)'s name)(go-to:"Menu_Confirm Quit")]
(click: ?return_to_game)[ <script>savegame("ReturnFlag","RETURNING"); window.loadgame("MenuSave");</script> ]
(click: ?goToTitle)[(set: $drawAction to "erase")(display: "decorate campsite")(set: $in_intro to false)(go-to: "Menu")]
<script>
var ReturnFlag = getraw("ReturnFlag");
if(ReturnFlag == "RETURNING"){
var compiling_spell = "";
var inv_commands = getraw("inv_commands");
if(!isUndefined(inv_commands) && inv_commands != "" && inv_commands != null){
var inv_commands_ar = inv_commands.split(",");
var inventory = getHarloweVariable("inventory");
for (var i = 0; i < inv_commands_ar.length; i += 2) {
var command = inv_commands_ar[i];
var data = inv_commands_ar[i+1];
if(command == "discard")
inventory.delete(data);
else if(command == "reset_inventory"){
let inv_bits = data.split("~");
inventory.clear();
for(let j = 0; j < inv_bits.length; j += 2){
if(inv_bits[j] != ""){
let key = inv_bits[j];
let value = inv_bits[j+1];
let new_item = new Map();
new_item.set("description",value);
inventory.set(key,new_item);
}
}
} else if(command == "transform"){
let transform_parts = data.split(">");
let transform_name = transform_parts[0];
let new_name = transform_parts[1];
let new_desc = transform_parts[2];
inventory.delete(transform_name);
let new_item = new Map();
new_item.set("description",new_desc);
inventory.set(new_name,new_item);
}else {
if(isInteger(data)) data = parseInt(data);
seth(command,data);
}
}
seth("inventory",inventory);
}
var music = geth("PlayingMusic");
if(!isUndefined(music) && music != "" && music != null && music != 0) musicLoop(music);
else musicLoop("");
if(compiling_spell != ""){
saveraw("ReturnFlag","BLANK");
}
}
saveraw("ReturnFlag","BLANK");
function isInteger(value) { return /^\d+$/.test(value); }
refreshHUD();
markupEnergyActions();
</script>
(if: $FontSize is "LARGE")[ <style> body { font-size: 130%; } </style> ]
(elseif: $FontSize is "HUGE")[ <style> body { font-size: 160%; } </style> ]
(if: $ColorBlind is true)[
<style>
.enchantment-link, tw-link, .visited, .select-item, a {
border: 1px solid #8b8989;
padding: 3px;
}
</style>
]
(if: $vampire_enrichment_score > 29)[<script>addAchieve("Vampire Enrichment");</script>]
(if: $enemyHealthDisplay is true)[
<style>
tw-story{ padding: 210px 15% 40px 15%; }
tw-passage { margin-bottom: 60px; }
</style>
]
(if: $justWon is true)[<style>
body{ background: #172511; }
a:hover, tw-link:hover, .enchantment-link:hover { color: #C29539 !important; }
.menu_spacing tw-enchantment::before {
background: #C29539 !important;
}
.menu_spacing tw-enchantment::after {
background: #C29539 !important;
}
</style>]
}(if: false)[
astarionState (print: $astarionState)
playerState (print: $playerState)
astarion action (print: $astarion_action)
completedSilence (print: $completedSilence)
speechProgress (print: $speechProgress)
just said (print: $just_said)
](display: "menu_menu")
<div class="menu_frame">GENERAL OPTIONS<hr/>//Sound Effects:// <a id='SoundEffects-opt' class='clickable' onClick='toggleOption("SoundEffects","OFF","ON");'>(if: $SoundEffects is true)[ON](else:)[OFF]</a>
ACCESSABILITY<hr/>//Color Blind Mode:// <a id='color-opt' class='clickable' onClick='toggleColorOpt();'>(if: $ColorBlind is true)[ON](else:)[OFF]</a>
//Font Size:// <a id='FontSize-opt' class='clickable' onClick='toggleFontSizeOption();'>$FontSize</a>
|menu_credits>[View Credits]
{
(set: $display_resume to true)
(click: ?menu_ack)[(go-to: "Menu_Ack")]
(click: ?menu_reset)[(go-to: "Menu_Reset Everything")]
(click: ?menu_credits)[(go-to: "Menu_Credits")]
<script>
function toggleMusicOpt(){
var Music = geth("Music");
if(Music){ seth("Music",false); toggleMusic("OFF"); $("#music-opt").html("OFF"); }
else { seth("Music",true); toggleMusic("ON"); $("#music-opt").html("ON"); }
savePermSettings();
}
function toggleTextSpeedOption(){
var TextToSpeechSpeed = geth("TextToSpeechSpeed");
if(TextToSpeechSpeed == "NORMAL") { seth("TextToSpeechSpeed","FAST"); toggleTextToSpeechSpeed("FAST"); $("#TextToSpeechSpeed-opt").html("FAST"); }
else if(TextToSpeechSpeed == "FAST") { seth("TextToSpeechSpeed","FASTER"); toggleTextToSpeechSpeed("FASTER"); $("#TextToSpeechSpeed-opt").html("FASTER"); }
else if(TextToSpeechSpeed == "FASTER") { seth("TextToSpeechSpeed","EVEN FASTER"); toggleTextToSpeechSpeed("EVEN FASTER"); $("#TextToSpeechSpeed-opt").html("EVEN FASTER"); }
else if(TextToSpeechSpeed == "EVEN FASTER") { seth("TextToSpeechSpeed","FASTEST"); toggleTextToSpeechSpeed("FASTEST"); $("#TextToSpeechSpeed-opt").html("FASTEST"); }
else { seth("TextToSpeechSpeed","NORMAL"); toggleTextToSpeechSpeed("NORMAL"); $("#TextToSpeechSpeed-opt").html("NORMAL"); }
savePermSettings();
}
function toggleFontSizeOption(){
var FontSize = geth("FontSize");
if(FontSize == "NORMAL") { seth("FontSize","LARGE"); $("#FontSize-opt").html("LARGE"); }
else if(FontSize == "LARGE") { seth("FontSize","NORMAL"); $("#FontSize-opt").html("NORMAL"); }
savePermSettings();
goToPassage("Menu_options");
}
function toggleSpeedrunOpt(){
var SpeedRun = geth("SpeedRun");
if(SpeedRun){ seth("SpeedRun",false); $("#speed-text").html("OFF"); $("#speed-mode-opt").html("OFF"); }
else { seth("SpeedRun",true); $("#speed-text").html("ON"); $("#speed-mode-opt").html("ON"); }
savePermSettings();
}
function toggleSpeedrunControlOpt(){
var SpeedRunDisplay = geth("SpeedRunDisplay");
if(SpeedRunDisplay){ seth("SpeedRunDisplay",false); hideHUD("speed-run-toggle"); $("#speed-mode-ctrl-opt").html("OFF"); }
else { seth("SpeedRunDisplay",true); displayHUD("speed-run-toggle"); $("#speed-mode-ctrl-opt").html("ON"); }
savePermSettings();
}
function toggleFullscreenOpt(){
var Fullscreen = geth("Fullscreen");
if(Fullscreen){ seth("Fullscreen",false); setFullscreen('OFF'); $("#fullscreen-opt").html("OFF"); }
else { seth("Fullscreen",true); setFullscreen('ON'); $("#fullscreen-opt").html("ON"); }
savePermSettings();
}
function toggleColorOpt(){
var ColorBlind = geth("ColorBlind");
if(ColorBlind){ seth("ColorBlind",false); $("#color-opt").html("OFF"); }
else { seth("ColorBlind",true); $("#color-opt").html("ON"); }
savePermSettings();
goToPassage("Menu_options");
}
function toggleOption(optionName,offText,onText){
var option = geth(optionName);
if(option){ option = false; seth(optionName,false); $("#"+optionName+"-opt").html(offText); }
else { option = true; seth(optionName,true); $("#"+optionName+"-opt").html(onText); }
savePermSettings();
if(optionName == "TextToSpeech"){
if(option)$("#TextToSpeechOptions").css("display","block");
else $("#TextToSpeechOptions").css("display","none");
}
}
var TextToSpeech = geth("TextToSpeech");
console.log("TextToSpeech",TextToSpeech);
if(TextToSpeech) $("#TextToSpeechOptions").css("display","block");
else $("#TextToSpeechOptions").css("display","none");
</script>
}(display: "menu_menu")(set: $display_resume to true)
If you liked this game, try my other game: <a target="_blank" href="http://www.abigailcorfman.com/Home/OpenSorcery" data-raw="">Open Sorcery</a>
If you like my style, subscribe to my <a target="_blank" href="http://eepurl.com/bWnLDT" data-raw="">Vegetarian Newsletter.</a>
(Vegetarian because there's no spam. I email you ONLY when I make new things.)
If you want to tell me something, <a href="mailto:beautiful.lightness@gmail.com">email me</a> or <a href="https://discord.gg/kHgtwqe" target="_blank"> visit my discord.</a>
(set: $allowQuicksave to false)
(set: $currentGameDate to "")
(display: "Preload Images")
<script>
var first_game = getraw("first_game");
if(first_game == null || first_game == "null") first_game = "First Game";
seth("first_game",first_game);
saveraw("first_game",first_game);
var MenuSave = getMenuSaveTitle();
seth("MenuSave",MenuSave);
goToPassage("second technology");
</script>(set: $bastellusFangs to 5)
(go-to: $previous_passage){
(set: $SpeedRun to false)
(set: $SpeedRunDisplay to false)
(set: $ColorBlind to false)
(set: $TextToSpeech to false)
(set: $TextToSpeechSpeed to "NORMAL")
(set: $FontSize to "NORMAL")
(set: $TravelAnimation to false)
(set: $SoundEffects to true)
(set: $Music to true)
(set: $Fullscreen to true)
(set: $puzzles_complete to "default~puzzle")
(set: $currentGameDate to "")
(set: $Quickstart to false)
(set: $IntroComplete to false)
(set: $AgreementMade to false)
(set: $LastDifficulty to "balanced")
<script>savePermSettings();
</script>
}{
<style>
tw-passage { text-align: center; }
.inv_hide { display: none; }
.inv-border {
border: 1px solid #777;
padding: 0.01em 6px;
border-radius: 6px;
margin-bottom: 10px;
cursor: auto;
background-color: rgba(0,0,0,0.5);
text-shadow: none;
}
.inv-item { padding: 0 0 1em 16px; }
.inv-item-header { font-weight: bold; }
.inv-click { cursor: pointer; }
.red_header tw-expression { position: initial;}
.equip-area { padding-left: 1em; }
td { width: 10%; text-align: center; }
.compile-dormant{
float: right;
margin-top: 12px;
margin-right: 15px;
padding: 5px;
color: gray;
}
.compile-active{
float: right;
margin-top: 20px;
margin-right: 20px;
border: 3px solid #4169E1;
padding: 5px;
}
#InvMenu { font-size: 30px; }
</style>
<script>
function displayDescEasy(e) {
var descId = replaceAll(e.id, "key","desc");
var desc = $("#" + descId);
if(desc.css("display") == "none") desc.css("display","inline");
else desc.css("display","none");
return false;
}
function printElementInventory(value, key, map) {
var inventory = geth("inventory");
var inv_item = inventory.get(key);
var desc = inv_item.get("description");
var under_key = replaceAll(key, " ","_");
under_key = replaceAll(under_key, ":","");
under_key = replaceAll(under_key, ",","");
under_key = replaceAll(under_key, "!","");
var to_append = "";
var is_readable = true;
to_append = "<div class='inv-item'><a class='inv-click' onClick='displayDesc(this,\"inventory\")'>"+key+"</a> <span ";
to_append += "style='display: none;' ";
to_append += "id='inv-desc-"+under_key+"'>- " + desc + "</span> ";
let see_the_three = geth("see_the_three");
if(see_the_three) to_append += "<span class='emph' style='font-size: 70%; cursor: pointer;' onClick='transform(\""+key+"\")'> Transform</span>";
if(key == "scotch" || key == "black ichor" || key == "health potion") to_append += "<span class='emph' style='font-size: 70%; cursor: pointer;' onClick='drink(\""+key+"\")'> Drink</span>";
to_append += "</div>";
$("#inventory").append(to_append);
}
function transform(key){
var inventory = geth("inventory");
var inv_item = inventory.get(key);
var desc = inv_item.get("description");
seth("transform_name",key);
seth("transform_desc",desc);
goToPassage("Transform");
}
function drink(key){
seth("drink_name",key);
goToPassage("Drink");
}
function discardInv(under_key,text){
seth("reading",text);
$("#discard"+under_key).css("display","none");
$("#confirmdiscard"+under_key).css("display","inline");
$("#canceldiscard"+under_key).css("display","inline");
}
function confirmDiscard(under_key){
$("#inv-note-"+under_key).remove();
var reading = geth("reading");
addInvCommand("discard",reading,"add");
var inventory = geth("inventory");
inventory.delete(reading);
seth("inventory",inventory);
}
function cancelDiscard(under_key){
$("#discard"+under_key).css("display","inline");
$("#confirmdiscard"+under_key).css("display","none");
$("#canceldiscard"+under_key).css("display","none");
}
function displayDesc(e,har_var) {
var inventory = window.getHarloweVariable(har_var);
var inv_item = inventory.get(e.innerHTML);
var under_key = replaceAll(e.innerHTML, " ","_");
under_key = replaceAll(under_key, ":","");
under_key = under_key.replace('?','');
var desc = $("#inv-desc-" + under_key);
if(desc.css("display") == "none"){
desc.css("display","inline");
}
else{
desc.css("display","none");
}
return false;
}
function sortMap(map,flag){
var category1 = [];
var category2 = [];
for (var item of map) {
var map_item = item[1];
if(flag == "")
category1.push(item);
else{
var flag_result = map_item.get(flag);
if(!flag_result) category1.push(item);
else category2.push(item);
}
}
category1.sort();
category2.sort();
var final_sorted_list = new Map();
for (var item of category1) final_sorted_list.set(item[0],item[1]);
for (var item of category2) final_sorted_list.set(item[0],item[1]);
return final_sorted_list;
}
function switchInv(e){
var target = $(e).html();
seth("InvDisplay",target);
setupInventory();
}
function setupInventory(){
var inventory = geth("inventory");
var InvDisplay = geth("InvDisplay");
var print_inv = true;
var InvDisplayText = InvDisplay;
var InvDisplayMinorText = "Inventory";
$("#InvDisplayText").html(InvDisplayText);
if(InvDisplay == "Inventory"){
if(print_inv == true){
$("#inventory-container").css("display","block");
inventory = sortMap(inventory,"");
inventory.forEach(printElementInventory);
}
else{
$("#inventory-container").css("display","none");
$("#inventory").html("");
}
}
else{
$("#inventory-container").css("display","none");
$("#inventory").html("");
}
}
setupInventory();
</script>
<div id="InvMenu"></div>
<div style="text-align: left; width: 100%; margin: auto;">
<div id='inventory-container' class="inv-border inv_hide"><b>Inventory</b><span id='inventory'></span></div>
(set: $display_resume to true)
</div>
}<div class="menu_items_top"> <span class="menu_spacing">|Restart>[BEGIN]</span> / (if: $currentPassage is "Menu_Restore")[<span class="space">RESUME</span>](else:)[<span class="menu_spacing">|menu_restore>[RESUME]</span>] / (if: $currentPassage is "Menu_Feats")[<span class="space">FEATS</span>](else:)[<span class="menu_spacing">|menu_feats>[FEATS]</span>] / (if: $currentPassage is "Menu_Credits")[<span class="space">CREDITS</span>](else:)[<span class="menu_spacing">|menu_credits>[CREDITS]</span>] / (if: $currentPassage is "Menu_options")[<span class="space">OPTIONS</span>](else:)[<span class="menu_spacing">|menu_options>[OPTIONS]</span>] </div>{
<style>
tw-story { padding: 10px 0px !important; }
tw-passage { text-align: center; }
tw-passage { background-color: transparent !important; border: none !important; }
</style>
}{
(set: $initial_load to "loaded")
(set: $noBox to false)
<script>
setupSaves();
installExtraHtml();
</script>
(set: $AchieveDisplay to "Act1")
<script>
saveraw("ReturnFlag","NONE");
</script>
}----Sequence----
(if: $sequence is 0)[
](elseif: $sequence is 1)[
](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}
(if: $just_said is "")[
](elseif: $just_said is "")[
](elseif: $just_said is "")[
](else:)[
]
|next>[Continue]{
}
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="maybe" class="energy-link" data-content="Speak: Maybe./Speech/2"></span>
<span id="probably" class="energy-link" data-content="Speak: Probably./Speech/2"></span>
<span id="obviously" class="energy-link" data-content="Speak: Obviously./Speech/2"></span>
<span id="bad" class="energy-link" data-content="Speak: Is that bad?/Speech/4"></span>(set: $sorted_inventory to (datanames: $inventory))(if: $sorted_inventory's length is 0)[//I have nothing that can be used here.//
](else:)[<span id="list"></span>{
(set: $selected_item to "")
<script>
function printElement(value, key, map) {
var desc = value.get("description");
var name = value.get("name");
if(desc != ""){
var to_append = "<a name='"+name+"' onclick='selectItem(this)' class='select-item'>"+key+"</a> - "+desc+"<br><br>";
$("#list").append(to_append);
}
}
function selectItem(e){
setHarloweVariable("selected_item",e.innerHTML);
setHarloweVariable("selected_item_name",e.name);
var sequence = getHarloweVariable("sequence");
setHarloweVariable("sequence",sequence+1);
var currentPassage = getHarloweVariable("currentPassage");
goToPassage(currentPassage);
}
getHarloweVariable("inventory").forEach(printElement);
</script>
}]Loading Game....
Please be patient.
(display: "game start setup")
(set: $print_title to true)
(set: $interrupt to false)
(if: $interrupt is true)[
(display: "initial settings")
(set: $no_menu to false)
(set: $menu_numbers to true)
<script>
seth("first_game","done");
saveraw("first_game","done");
</script>
(go-to: "Campsite Intermission")
]
(if: $first_game is "First Game")[
(display: "initial settings")
(set: $no_menu to false)
(set: $menu_numbers to true)
<script>
seth("first_game","done");
saveraw("first_game","done");
loadPermSettings();
goToPassage("Menu");
</script>
](elseif: $MenuSave is "RESTART")[
<script>
loadPermSettings();
loadAchieve();
loadPuzzles();
</script>
(display: "game values")
<script>
savegame("MenuSave","DELETED");
savegame("CurrentSave","DELETED");
</script>
(set: $no_menu to false)
(set: $in_intro to true)
<script>
seth("sequence",0);
if(geth("AgreementMade") != true && false) seth("sequence",-2);
goToPassage("Act 3 Intro");
</script>
](else:)[
<script>
loadPermSettings();
loadAchieve();
loadPuzzles();
goToPassage("Menu");
</script>
]{
(set: $sorted_inv to (datanames: $inventory))
(if: $m_type is "feeling")[(set: $sorted_inv to (datanames: $m_feelings))]
(if: $m_type is "thought")[(set: $sorted_inv to (datanames: $m_thoughts))]
(set: $selected_item to "")
<script>
function printElementInventory(value, key, map) {
var m_type = geth("m_type");
var inventory = getHarloweVariable("inventory");
if(m_type == "feeling") inventory = getHarloweVariable("m_feelings");
if(m_type == "thought") inventory = getHarloweVariable("m_thoughts");
var item = inventory.get(value);
var desc = item.get("description");
var under_value = replaceAll(value, " ","_");
var to_append = "";
to_append += "<a name='"+value+"' onclick='selectItem(this)' class='inv-item-header cast-spell'>"+value+"</a><br><br>";
$("#inv").append(to_append);
}
function selectItem(e){
setHarloweVariable("selected_item",e.name);
var sequence = getHarloweVariable("sequence");
setHarloweVariable("sequence",sequence+1);
var currentPassage = getHarloweVariable("currentPassage");
goToPassage(currentPassage);
}
</script>
<style>
.inv-item { padding: 0 0 1em 16px; text-align: left; }
.inv-item tw-hook tw-link { color: #8cf; }
.cast-spell { cursor: pointer; font-weight: bold;}
</style>
}<span id="inv"></span>
{
<script>
var sorted_inv = geth("sorted_inv");
sorted_inv.forEach(printElementInventory);
console.log("sorted_inv",sorted_inv);
if(sorted_inv.length == 0){
var m_type = geth("m_type");
if(m_type == "feeling") $("#inv").append("<br><i>I am not feeling anything in particular.</i><br><br>");
else if(m_type == "thought") $("#inv").append("<br><i>I am not thinking anything of note.</i><br><br>");
else $("#inv").append("<br><i>There is nothing in your inventory.</i><br><br>");
}
</script>
}{(if: $test_mode is true)[(set: $energyDisplay to true)]
(set: $energy to $energy + $energy_change)
(if: $energy > $maxEnergy)[(set: $energy to $maxEnergy)]
(if: $energy < 0)[(set: $energy to 0)]
(if: $energy_change > 0)[<span class='energy'>//Recovered $energy_change Energy//</span>](else:)[(set: $energy_change to 0-$energy_change)<span class='energy'>//Spent $energy_change Energy//</span>]
<script>playAudio("aa_clock_tick1");</script>
}(if: $sequence is -2)[This may feel like an escape-the-room game. It is not. It is an endure-the-room game.
You may not have as much power as you're used to and you won't be able to do everything you want.
But the small things you can do are significant.
Are you ready to endure and be helpful in small ways?
|skip>[Yes.]
|next>[I would prefer to play a game where things happen quickly and I can be powerful.]{
}](elseif: $sequence is -1)[That's very reasonable. I'm glad you know what you want.
Here. <a href="https://baldursgate3.game/" target="_blank">This is a good game where you can do that.</a>
|goToTitle>[Return to title.]{
}](elseif: $sequence is 0)[This is a fanwork based on the game <a href="https://baldursgate3.game/" target="_blank">Baldur's Gate 3.</a>
If you have not played that game, here's a |next>[brief synopsis of the relevant story.]
You are an adventurer.
Would you like to tell me what kind of adventurer you are?
|chooseClass>[Yes. Show me the options.]
|chooseMystery>[No. I wish to remain mysterious.]
|chooseRandom>[Choose for me.](if: $Quickstart is true)[
|quickStart>[Quickstart.]]{
(display: "Preload Images")
(set: $quickstarting to false)
(set: $act2_quickstart to false)
(set: $class to "")
(set: $display_class to "")
(set: $difficulty to $LastDifficulty)
(click: ?chooseClass)[(set: $sequence to 2)(set: $just_said to "class")(go-to: $currentPassage)]
(click: ?chooseMystery)[(set: $sequence to 3)(set: $just_said to "mystery")(go-to: $currentPassage)]
(click: ?chooseRandom)[(set: $sequence to 3)(set: $just_said to "random")(go-to: $currentPassage)]
(click: ?quickStart)[(set: $sequence to 16)(set: $just_said to "random")(go-to: $currentPassage)]
<script>
seth("AgreementMade",true);
savePermSettings();
</script>
}](elseif: $sequence is 1)[//Extremely Brief Summary//
You are an adventurer in a fantasy world full of Dungeons and Dragons.
You are traveling with a bunch of adventurer friends. You are all telepathically connected because of |plot>[Plot.] You all have trauma.
Your vampire-rogue friend has a particularly large amount of trauma. His name is Astarion. He is about to be in trouble.
//Longer Summary//
You are an adventurer in a fantasy world full of Dungeons and Dragons. You were captured by mind flayers--psychic, tentacled monsters. They infected you with parasitic tadpoles that will eventually transform you into a mind flayer.
You escaped by working with an eclectic group of other adventurers who are also infected with tadpoles. You are traveling together through a forested countryside, searching for a cure, and getting regularly distracted by side-quests.
As you adventure, you discover that many people have been infected, and that it is part of a larger plot. The tadpoles confer psychic powers on their hosts, letting you communicate telepathically, share memories, and much more. A cult of infected calling themselves True Souls are doing terrible things with these powers.
Dealing with that is the plot of Baldur's Gate 3. This is a side story. It centers on one of your companions: an Elven vampire named Astarion. Astarion is eloquent, cynical, capricious, manipulative, playful, cruel, deeply traumatized, and gleeful about his newly regained freedom.
Many of Astarion's worse qualities can be traced back to the centuries of slavery he's endured under a sadistic vampire lord named Cazador Szarr. Cazador had complete control over Astarion's body and actions up until the tadpole disrupted that. Astarion's past trauma, which this game explores, includes brutal torture, starvation, solitary confinement, and being forced into a form of deadly sex-work--compelled to use his body to lure thousands of victims back to his master's palace.
This game does presuppose that your character cares what happens to Astarion. If you don't like him (which is a very legitimate opinion to have, he is an asshole) you should probably not play this game.
|return>[Continue]{
(click-replace: ?plot)[gestating psychic tadpoles inside your brains.]
}](elseif: $sequence is 2)[What class of adventurer are you?
//Don't fret over this decision. It doesn't matter as much as usual.//
{
<div class="container center" id="first">
<div class="row">
<div class="item" id="item1"><p>|chooseBarbarian>[Barbarian]</p></div>
<div class="item" id="item2"><p>|chooseBard>[Bard]</p></div>
<div class="item" id="item2"><p>|chooseCleric>[Cleric]</p></div>
<div class="item" id="item2"><p>|chooseDruid>[Druid]</p></div>
</div>
<div class="row">
<div class="item" id="item1"><p>|chooseFighter>[Fighter]</p></div>
<div class="item" id="item2"><p>|chooseMonk>[Monk]</p></div>
<div class="item" id="item2"><p>|choosePaladin>[Paladin]</p></div>
<div class="item" id="item2"><p>|chooseRanger>[Ranger]</p></div>
</div>
<div class="row">
<div class="item" id="item1"><p>|chooseRogue>[Rogue]</p></div>
<div class="item" id="item2"><p>|chooseSorcerer>[Sorcerer]</p></div>
<div class="item" id="item2"><p>|chooseWarlock>[Warlock]</p></div>
<div class="item" id="item2"><p>|chooseWizard>[Wizard]</p></div>
</div>
</div>
<style>
div.item {
height: 100px;
width: 100px;
position: relative;
border: 2px solid black;
margin:5px;
float: left;
}
.row{
clear: both;
}
div.item p {
margin: 0;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%)
}
</style>
(click: ?chooseBarbarian)[(set: $sequence to 3)(set: $class to "barbarian")(set: $display_class to "Barbarian")(go-to: $currentPassage)]
(click: ?chooseBard)[(set: $sequence to 3)(set: $class to "bard")(set: $display_class to "Bard")(go-to: $currentPassage)]
(click: ?chooseCleric)[(set: $sequence to 3)(set: $class to "cleric")(set: $display_class to "Cleric")(go-to: $currentPassage)]
(click: ?chooseDruid)[(set: $sequence to 3)(set: $class to "druid")(set: $display_class to "Druid")(go-to: $currentPassage)]
(click: ?chooseFighter)[(set: $sequence to 3)(set: $class to "fighter")(set: $display_class to "Fighter")(go-to: $currentPassage)]
(click: ?chooseMonk)[(set: $sequence to 3)(set: $class to "monk")(set: $display_class to "Monk")(go-to: $currentPassage)]
(click: ?choosePaladin)[(set: $sequence to 3)(set: $class to "paladin")(set: $display_class to "Paladin")(go-to: $currentPassage)]
(click: ?chooseRanger)[(set: $sequence to 3)(set: $class to "ranger")(set: $display_class to "Ranger")(go-to: $currentPassage)]
(click: ?chooseRogue)[(set: $sequence to 3)(set: $class to "rogue")(set: $display_class to "Rogue")(go-to: $currentPassage)]
(click: ?chooseSorcerer)[(set: $sequence to 3)(set: $class to "sorcerer")(set: $display_class to "Sorcerer")(go-to: $currentPassage)]
(click: ?chooseWarlock)[(set: $sequence to 3)(set: $class to "warlock")(set: $display_class to "Warlock")(go-to: $currentPassage)]
(click: ?chooseWizard)[(set: $sequence to 3)(set: $class to "wizard")(set: $display_class to "Wizard")(go-to: $currentPassage)]
}
](elseif: $sequence is 3)[ (if: $just_said is "mystery")[You are a mystery.](elseif: $just_said is "class")[You are a $display_class.](else:)[{
(set: $rand to (random: 1, 12))(if: $rand is 1)[(set: $class to "barbarian")(set: $display_class to "Barbarian")
](elseif: $rand is 2)[(set: $class to "bard")(set: $display_class to "Bard")
](elseif: $rand is 3)[(set: $class to "cleric")(set: $display_class to "Cleric")
](elseif: $rand is 4)[(set: $class to "druid")(set: $display_class to "Druid")
](elseif: $rand is 5)[(set: $class to "fighter")(set: $display_class to "Fighter")
](elseif: $rand is 6)[(set: $class to "monk")(set: $display_class to "Monk")
](elseif: $rand is 7)[(set: $class to "paladin")(set: $display_class to "Paladin")
](elseif: $rand is 8)[(set: $class to "ranger")(set: $display_class to "Ranger")
](elseif: $rand is 9)[(set: $class to "rogue")(set: $display_class to "Rogue")
](elseif: $rand is 10)[(set: $class to "sorcerer")(set: $display_class to "Sorcerer")
](elseif: $rand is 11)[(set: $class to "warlock")(set: $display_class to "Warlock")
](else:)[(set: $class to "wizard")(set: $display_class to "Wizard")
]
}I have made you a $display_class.]
Please select your difficulty.
|balanced>[Balanced]
//Challenging. You are likely to lose a few times as you learn how to play.//
|explorer>[Explorer]
//Story focused.//{
(click: ?explorer)[(set: $sequence to it+1)(set: $difficulty to "explorer")(go-to: $currentPassage)]
(click: ?balanced)[(set: $sequence to it+1)(set: $difficulty to "balanced")(go-to: $currentPassage)]
}](elseif: $sequence is 4)[Choose where you want to begin.
If this is your first time playing, choose the option 'Begin at the Campsite'.
|campsiteStart>[Begin at the Campsite]
|tombStart>[Begin in the Tomb]
|act2Start>[Begin in Act 2]
|act3Start>[Begin in Act 3]{
(click: ?campsiteStart)[(set: $sequence to 0)(go-to: "Campsite Intro")]
(click: ?tombStart)[(set: $sequence to 0)(go-to: "Act 1")]
(click: ?act2Start)[(set: $sequence to 0)(set: $act2_quickstart to true)(go-to: "Act 2")]
(click: ?act3Start)[(set: $sequence to 0)(set: $act3_quickstart to true)(go-to: "Act 3")]
(set: $LastDifficulty to $difficulty)
<script>savePermSettings();</script>
}
](elseif: $sequence is 5)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[Let's be quick.
Choose your class:
<select name="classes" id="classes">
<option value="Barbarian">Barbarian</option>
<option value="Bard">Bard</option>
<option value="Cleric">Cleric</option>
<option value="Druid">Druid</option>
<option value="Fighter">Fighter</option>
<option value="Monk">Monk</option>
<option value="Paladin">Paladin</option>
<option value="Ranger">Ranger</option>
<option value="Rogue">Rogue</option>
<option value="Sorcerer">Sorcerer</option>
<option value="Warlock">Warlock</option>
<option value="Wizard">Wizard</option>
</select>
Choose your difficulty:
<select name="difficulties" id="difficulties">
<option value="explorer">Explorer</option>
<option value="balanced" selected="selected">Balanced</option>
</select>
(if: true)[
Choose your Act:
<select name="acts" id="acts">
<option value="act1" selected="selected">Act 1</option>
<option value="act2">Act 2</option>
<option value="act3">Act 3</option>
</select>
]
<a id='Link' onclick='quickstartTomb()'>Go to the tomb.</a>{
<script type="text/javascript">
function quickstartTomb(){
seth("quickstarting",true);
seth("sequence",0);
var className = $('#classes').find(":selected").val();
seth("display_class",className);
seth("class",className.toLowerCase());
var difficulty = $('#difficulties').find(":selected").val();
seth("difficulty",difficulty);
var act = $('#acts').find(":selected").val();
if(act == "act3"){
seth("act3_quickstart",true);
goToPassage("Act 3");
}else if(act == "act2"){
seth("act2_quickstart",true);
goToPassage("Act 2");
}else{
goToPassage("Act 1");
}
}
</script>
}
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}{
<img class="centerImage" src="./silenceImages/widesmile.jpg" alt="Wide Smile">
}
|goToTitle>[Return to title.]{
<script>
addAchieve("Devouring Dark");
resetScreen();
musicStopAll();
playAudio("aa_sigh");
</script>
(set: $energyDisplay to false)
(set: $learnDisplay to false)
(set: $enemyHealthDisplay to false)
<style>
.centerImage {
display: block;
margin-left: auto;
margin-right: auto;
width:400px;
}
</style>
}(display: "menu_menu")
Writing & Design by Abigail Corfman
<a href="http://www.abigailcorfman.com/" target="_blank">Play more games like this.</a>
<a href="https://archiveofourown.org/series/3894115" target="_blank">Read more stories like this.</a>
Possible Protagonists
Aldiirn belongs to <a href="https://www.tumblr.com/mistercrowbar" target="_blank">@mistercrowbar</a>
Andar belongs to <a href="https://archiveofourown.org/works/53068186" target="_blank">Tatsunara</a>
Ember belongs to <a href="https://www.tumblr.com/catsharky" target="_blank">@catsharky</a>
Finch belongs to <a href="https://www.tumblr.com/everchased" target="_blank">@everchased</a>
Francys belongs to <a href="https://www.tumblr.com/ineadhyn" target="_blank">@ineadhyn</a>
Greygold belongs to <a href="https://www.tumblr.com/jeeaark" target="_blank">@jeeaark</a>
Nawen belongs to <a href="https://www.tumblr.com/ineed-to-sleep" target="_blank">@ineed-to-sleep</a>
Ria belongs to <a href="https://www.tumblr.com/ladyofrosefire" target="_blank">@ladyofrosefire</a>
Staeve belongs to <a href="https://www.tumblr.com/velnna" target="_blank">@velnna</a>
Temiter belongs to <a href="https://www.tumblr.com/not-poignant" target="_blank">@not-poignant</a>
Art
<a href="https://www.tumblr.com/cymk8" target="_blank">cymk8</a>
|cymk8Picture>[View picture]
<a href="https://www.tumblr.com/ducancela-a" target="_blank">ducancela-a</a>
|ducancelaPicture>[View picture]
<a href="https://www.tumblr.com/milton-chamberlain" target="_blank">milton-chamberlain</a>
|miltonPicture>[View picture]
Music
<a href="https://soundcloud.com/janay-maisano-music/a-dream-of-silence-rising-1" target="_blank">A Dream Of Silence - Rising</a>
by <a href="https://soundcloud.com/janay-maisano-music" target="_blank">Janay Maisano</a>
Sounds
//Time// by <a href="https://freesound.org/people/bennathanras/sounds/607422/" target="_blank">bennathanras</a> via freesound
//Damage// by <a href="https://freesound.org/people/Halph-Price/" target="_blank">Halph-Price</a> via freesound
//Fire// by <a href="https://freesound.org/people/7778/" target="_blank">7778</a> via freesound
//Level Up// by <a href="https://freesound.org/people/FoolBoyMedia/" target="_blank">FoolBoyMedia</a> via freesound
//Final Sigh// by <a href="https://freesound.org/people/timgormly/sounds/152721/" target="_blank">Timgormly</a> via freesound
//Dark Feat// by <a href="https://freesound.org/people/Sclolex/sounds/174877/" target="_blank">Sclolex</a> via freesound
//Healing// by <a href="https://freesound.org/people/Widowaker/" target="_blank">Widowaker</a> via freesound
//Door Opening// by <a href="https://freesound.org/people/OGsoundFX/sounds/423146/" target="_blank">OGsoundFX</a> via freesound
//Hinge Creaking// by <a href="https://freesound.org/people/leonelmail/sounds/429130/" target="_blank">leonelmail</a> via freesound
//Staff Tapping// by <a href="https://freesound.org/people/elliebruce7/sounds/711944/" target="_blank">elliebruce7</a> via freesound
//Scream// by <a href="https://freesound.org/people/ebcrosby/sounds/336464/" target="_blank">ebcrosby</a> via freesound
Images
370 Classical Scene-Building Vectors from <a href="https://creativemarket.com/PaperElement" target="_blank">Paper Element</a>
Scar Vector Art from <a href="https://www.etsy.com/shop/SuperGeekySVGs?ref=shop-header-name&listing_id=1561796689&from_page=listing" target="_blank">SuperGeekySVGs</a>
Dracula Fangs from <a href="https://creativemarket.com/skripnikbb" target="_blank">skripnikbb</a>
Fonts
<a href="https://fonts.google.com/specimen/Alegreya">Alegreya</a>
Alpha Testers
Aliizi
almightyjanitor
Breece
ineed-to-sleep
jeeaark
ladyofrosefire
Laura S
Malarthi
Max
mistercrowbar
Puffles
Spellmotif
Tatsunara
Wizard{
(set: $display_resume to true)
(set: $energyDisplay to false)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
(set: $learnDisplay to false)
(click: ?cymk8Picture)[(set: $artist to "cymk8")(go-to: "Menu_Picture")]
(click: ?ducancelaPicture)[(set: $artist to "ducancela")(go-to: "Menu_Picture")]
(click: ?miltonPicture)[(set: $artist to "milton")(go-to: "Menu_Picture")]
}(display: "menu_menu")
<div class="small_menu_items"> (if: $AchieveDisplay is "Act1")[Act 1](else:)[|Act1>[Act 1]] / (if: $AchieveDisplay is "Act2")[Act 2](else:)[|Act2>[Act 2]] / (if: $AchieveDisplay is "Act3")[Act 3](else:)[|Act3>[Act 3]] / (if: $AchieveDisplay is "Tav")[Character Specific](else:)[|Tav>[Character Specific]] / (if: $AchieveDisplay is "Dark")[Dark](else:)[|Dark>[Dark]] </div>
<div class="menu_frame"><span id="achievements"></span></div>(set: $display_resume to true)(if: $AchieveDisplay is "Dark")[
//These are darker feats. You may need to do unpleasant things to achieve them.
If you are a completionist, you have the author's permission to ignore the content on this page. It doesn't count towards your 100%.//]{
(display: "Populate Feats")
<script>
function printTavAchievement(value) {
var to_append = "";
var arr = value.split("~");
var name = arr[0];
var title = arr[1];
var desc = arr[2];
var hint = arr[3];
var tag = arr[4];
var link = arr[5];
var achievements = getHarloweVariable("Achievements");
if(isEmpty(achievements)) achievements = [];
console.log("title",title);
console.log("achievements",achievements);
if(achievements.includes(title)){
to_append += "<span class='energy'>"+name+" - "+title+"</span> / <span class='achieve_color'>"+desc+"</span><br/>";
if(tag.includes("@"))
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to <a target='_blank' href='https://www.tumblr.com/"+tag.replace("@","")+"'>"+tag+"</a></span><br/>";
else if(tag.includes("#"))
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to <a target='_blank' href='"+link+"'>"+tag+"</a></span><br/>";
else
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to "+tag+"</span><br/>";
}
else{
to_append += "<span style='color: gray;'>"+name+" - "+title+"</span> / "+desc+"<br/>";
if(tag.includes("@"))
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to <a target='_blank' href='https://www.tumblr.com/"+tag.replace("@","")+"'>"+tag+"</a></span><br/>";
else if(tag.includes("#"))
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to <a target='_blank' href='"+link+"'>"+tag+"</a></span><br/>";
else
to_append += "<span style='font-size: 16px; position: relative; top: -10px;'>belongs to "+tag+"</span><br/>";
to_append += "<span style='font-size: 16px; position: relative; top: -20px;'><a onClick='revealHint(this)'>Hint</a><span class='hint' style='display: none;'>"+ hint +"</span></span>";
}
to_append += "<br/>";
$("#achievements").append(to_append);
}
function printAchievement(value) {
var to_append = "";
var arr = value.split("~");
var title = arr[0];
var desc = arr[1];
var hint = arr[2];
var achievements = getHarloweVariable("Achievements");
if(isEmpty(achievements)) achievements = [];
if(achievements.includes(title))
to_append += "<span class='energy'>"+title+"</span> / <span class='achieve_color'>"+desc+"</span>";
else
to_append += "<span style='color: gray;'>"+title+"</span> / "+desc+"<br/><span style='font-size: 16px;'><a onClick='revealHint(this)'>Hint</a><span class='hint' style='display: none;'>"+ hint +"</span></span>";
to_append += "<br/><br/>";
$("#achievements").append(to_append);
}
function revealHint(val) {
val.style.display = "none";
val.nextSibling.style.display = "inline";
}
</script>
(if: $AchieveDisplay is "Credits")[
(display: "Menu_Credits")
](else:)[
<script>
var AchieveDisplay = geth("AchieveDisplay");
if(AchieveDisplay == "Tav")
geth(AchieveDisplay).forEach(printTavAchievement);
else
geth(AchieveDisplay).forEach(printAchievement);
</script>
]
(click: ?Act1)[(set: $AchieveDisplay to "Act1")(go-to: "Menu_Feats")]
(click: ?Act2)[(set: $AchieveDisplay to "Act2")(go-to: "Menu_Feats")]
(click: ?Act3)[(set: $AchieveDisplay to "Act3")(go-to: "Menu_Feats")]
(click: ?Tav)[(set: $AchieveDisplay to "Tav")(go-to: "Menu_Feats")]
(click: ?Dark)[(set: $AchieveDisplay to "Dark")(go-to: "Menu_Feats")]
(click: ?TellMe)[(go-to: "Menu_Tell")]
}(if: $sequence is 0)[You are asleep in the forest.
You wake up because everyone in your camp is screaming.
|next>[Continue]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
(set: $campOnFire to true)
}](elseif: $sequence is 1)[You know why. You just woke up from a nightmare. The worst moments of your life playing out in vivid detail.
Something is on fire. Karlach's tent is on fire.
She is in the center of it. Her mechanical heart is incandescent. Fire pours out of it, wreathing her. She is howling in Infernal. Her words are half battle-cry and half agony.
|next>[Shake her awake.]
|putOut>[Put out the fire.](if: $IntroComplete is true)[
|astarionTentSkip>[Find Astarion.]]{
<script>musicLoop("env_fire_roar"); </script>
}](elseif: $sequence is 2)[You get burned. You don't care.
Her eyes open wide and wrathful. You're afraid for a moment she's going to attack you.
But she doesn't. Of course she doesn't.
She pushes you away, because you're getting hurt. She staggers to her feet.
|skip>[Continue]
](elseif: $sequence is 3)[You grab the bucket of sand, kept by the campfire for safety's sake. You hurl it over Karlach's tent and Karlach.
She starts awake, eyes wide and wrathful. You're afraid for a moment she's going to attack you.
But she doesn't. Of course she doesn't.
She staggers to her feet.
|next>[Continue]{
<script>musicLoop(""); </script>
(set: $campOnFire to false)
}
](elseif: $sequence is 4)[$karlach I was back. I was back in Hell. It was. That fight with the bone devils.
$karlach It was so *real*. It--
$karlach Shit! Wyll!
|next>[Continue]
](elseif: $sequence is 5)[Wyll's tent is across from Karlach's. He's visible through the entrance.
He is curled in on himself. His hands are cupped around his bad eye.
The sounds of his pain are barely human.
|skip2>[Wake him.]
|next>[Tell Karlach to help him.]
](elseif: $sequence is 6)[Karlach rushes over. She picks up a blanket to cover her hands so she can shake Wyll awake without burning him.
You have to move on.
|skip2>[Because Gale's tent is *glowing*.]
](elseif: $sequence is 8)[Wyll starts awake when you shake him. He reaches out to you, grabs your arm.
$wyll Sorry. I'm sorry. I had to...
He stops. He recognizes you. You're not who he thought you were. Not the person he thought he was talking to.
$wyll What?
|next>[But you have to leave now because Gale's tent is *glowing*.]{
(set: $noteKarlachHelp to true)
}](elseif: $sequence is 9)[(if: $noteKarlachHelp is true)[Karlach stays with Wyll. ]You rush to the next tent.
Gale is floating an inch above his bedroll. White light is pouring off of |orb>[the symbol on his chest.](click: ?orb)[
//The symbol which marks the location of a Netherese destruction orb, a magical bomb embedded in his chest that might, if disturbed, detonate with enough force to level a city.//]
He's clutching at it like he's trying to stuff the light back inside.
|next>[Wake him.]
](elseif: $sequence is 10)[Waking Gale feels like disarming a trap. You're terrified you're going to do something wrong, jostle the orb in his chest, and everyone will die.
But then the light winks out. Gale falls back to the ground.
The moment he's entirely awake he starts talking.
|next>[Continue]
](elseif: $sequence is 11)[$gale Bastellus. I saw it. I've read about...
He twists to look behind him, like he expects something to be there, a handful of glowing missiles already forming in his hand.
But there's nothing there. The magic dissipates. Gale looks bewildered.
$gale But it's...it feeds tactically. How is it...
He turns back and sees (if: $campOnFire is true)[the still-burning remains of Karlach's tent.](else:)[the smoldering remains of Karlach's tent.] Sees Karlach crouched over Wyll. He stops looking confused and starts looking horrified.
$gale Oh Gods. It's using the tadpoles.
|next>["What? What's using the tadpoles?"]
|leaveGale>[You don't have time for exposition.]{
(set: $galeAskKill to false)
(set: $galeAskTrue to false)
(set: $galeAskStop to false)
}
](elseif: $sequence is 12)[$gale A dream stalker. Bastellus is the formal name. They feed on nightmares. Or more precisely the pain that nightmares produce.
$gale The tadpoles in our heads, our gestating psychic passengers, connect our minds.
$gale We are a network of dreamers for this creature to prey on.
$gale It could be in a cave somewhere, using a captive True Soul to reach out to the rest of us. Dawn isn't an endpoint. It never has to *stop*.
(if: $galeAskKill is false)[|galeAskKill>["Will it kill us?"]
](if: $galeAskTrue is false)[|galeAskTrue>["Is this happening to other True Souls?"]
](if: $galeAskStop is false)[|galeAskStop>["How do we stop it?"]
]|leaveGale>[Leave]
](elseif: $sequence is 13)[$gale The longer you dream, the more of you it will devour, and the deeper the sleep will grow.
$gale And prolonged feeding is fatal.
$gale So yes. Yes it will.(set: $galeAskKill to true)
(if: $galeAskTrue is false)[|galeAskTrue>["Is this happening to other True Souls?"]
](if: $galeAskStop is false)[|galeAskStop>["How do we stop it?"]
]|leaveGale>[Leave]
](elseif: $sequence is 14)[$gale I suspect it is.
$gale I suspect there's screaming all through Moonrise Towers.(set: $galeAskTrue to true)
(if: $galeAskKill is false)[|galeAskKill>["Will it kill us?"]
](if: $galeAskStop is false)[|galeAskStop>["How do we stop it?"]
]|leaveGale>[Leave]
](elseif: $sequence is 15)[$gale Wake everyone. Make sure everyone is awake.
$gale After that. I'm not sure.
He's reaching for a book.
$gale I'll find something.(set: $galeAskStop to true)
(if: $galeAskKill is false)[|galeAskKill>["Will it kill us?"]
](if: $galeAskTrue is false)[|galeAskTrue>["Is this happening to other True Souls?"]
]|leaveGale>[Leave]
](elseif: $sequence is 16)[(if: $campOnFire is true)[You stand and notice that Wyll is up. He and Karlach are putting out the parts of Karlach's tent that are still on fire.
]As you leave Gale he's going through his books. Looking intently for something. A long term solution for this problem.
You have more short term problems to deal with.
You need to make sure everyone is awake.
|findShadowheart>[Find Shadowheart.]
|next>[Find Astarion.]
|findLaezel>[Find Lae'zel.]{
(set: $lookingFor to "Shadowheart")
<script>musicLoop(""); </script>
(set: $campOnFire to false)
}](elseif: $sequence is 17)[Everyone's having nightmares, reliving their worst memories.
There is someone in camp who has *extremely bad* worst memories.
You're halfway to his tent when Lae'zel shouts for you.
She's so upset that she's forgotten you don't speak githyanki, but you hear your name.
|findLaezel>[Go help her.]
|next>[Send Gale to help her.]
|skip>[Send Wyll to help her.]
|skip2>[Send Karlach to help her.]
](elseif: $sequence is 18)[You yell for Gale to go and help--he can research what this is once people aren't bleeding in their dreams.
He does. Which leaves you free to finish what you were doing.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 19)[Unsurprisingly, Wyll is extremely willing to avoid thinking about his own nightmare by helping other people with theirs.
He goes to help. Which leaves you free to finish what you were doing.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 20)[Karlach rushes over to help, trailing Wyll who still looks shaken.
Which leaves you free to finish what you were doing.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 21)[(if: $lookingFor is "Shadowheart")[You find Shadowheart. Lae'zel is with her--standing and awake. She must have woken herself, like you did.](else:)[Lae'zel is awake. She must have woken herself, like you did. She's with Shadowheart.]
Shadowheart is sitting up, but she is absolutely not awake. She is curled in on herself, a huddled little ball. She is weeping and hiccuping. Whispering disjointedly. She's calling for her mother. Her voice is different. She sounds like a child.
Lae'zel is standing over her. She has her sword out and she looks apoplectic that there's nothing for her to hit. She hisses at you.
$laezel *Fix* it.
|skip3>[Help Shadowheart.]
|next>[Send Gale to help her.]
|skip>[Send Wyll to help her.]
|skip2>[Send Karlach to help her.]
](elseif: $sequence is 22)[You yell for Gale to come and help. He can research what this is once people aren't bleeding in their dreams.
$gale Shadowheart? Shadowheart. Whatever you're seeing, it's not real. I can assure you.
Lae'zel looks unimpressed with your choice, but there's no time to worry about that.
You move on. There's someone still unaccounted for.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 23)[You yell for Wyll to come help. Unsurprisingly, he is extremely willing to avoid thinking about his own nightmare by helping other people with theirs.
$wyll Shadowheart. I'm here with you. It's all right. It's going to be all right. We're here.
You move on. There's someone still unaccounted for.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 24)[You yell for Karlach to come help. She rushes over, trailing Wyll who still looks shaken.
$karlach Shadowheart? Sweetheart? It's time to wake up. Zel--shake her shoulder.
You move on. There's someone still unaccounted for.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 25)[It takes a horribly long time to wake Shadowheart. Long minutes of calling her name and shaking her. It's like the dream has talons in her, as long as her memory is terrible, and it does not want to let her go.
Your efforts are twice interrupted by fits of screaming. Wolves, you're sure. She's remembering wolves.
|next>[Continue]
](elseif: $sequence is 26)[You have repeated her name perhaps thirty times when Shadowheart's eyes refocus. Finally, she seems to be seeing you, not the monsters in her mind.
She lets out a sob, voice cracking under the weight of relief and buries her face in your chest.
You let her cry, but it's only a few seconds before she comes back to herself enough to push you away.
$shadowheart I'm sorry.
She's whispering. Her voice is raw. She sounds mortified. You think the thing in her hand just stung her.
|next>[Continue]
](elseif: $sequence is 27)[Wyll arrives, recovered enough from his own ordeal to help here.
Shadowheart didn't weep into his chest, so she's not quite as mortified when she speaks to him.
Lae'zel continues to stand over them, an awkward sentinel, aware enough to know her voice would not be helpful, but also not wanting to leave.
You move on. There's someone still unaccounted for.
|astarionTent>[Find Astarion.]
](elseif: $sequence is 28)[You reach Astarion's tent. Everyone else has been loud and thrashing in their dreams, but you haven't heard anything from him. You try to see that as a good sign.
It's quiet inside the tent. Astarion is lying still on his bedroll.
For a moment you're relieved. He's an elf. They don't sleep, not like the other races do. That strange reverie must have kept him safe.
|next>[Continue]
](elseif: $sequence is 29)[But he doesn't respond to his name. Or to his bedroll being shaken. Or his shoulder being shaken.
He's completely limp. Not breathing. He doesn't need to breathe, you know that, but it's disturbing like this. He looks like he's dead. Truly dead.
He doesn't respond to his name even when it's shouted.
|next>[Reach out through the tadpole connection.]
](elseif: $sequence is 30)[You're psychically connected to everyone in the group because you all have psionic tadpoles gestating in your heads.
You've shared thoughts and memories with Astarion before.
You try to reach out to him, but it doesn't work as it usually does.
No thoughts. No memories. There's a chasm where his mind should be. It's dark and cold and very, very deep. You feel like you're teetering on the edge of it.
There might be something at the bottom. You can barely make out what you think is a small, stone room.
|next>[Go there.]
|skip>[No. You're not willing to do that.]
<span class="explain">This will end the game.</span>
](elseif: $sequence is 31)[You jump off the edge of the chasm.
You fall
a very
long
way
.
.
.
.
.
|goToTomb>[You land in a cold, dark place.]{
(set: $IntroComplete to true)
<script>savePermSettings();</script>
}](elseif: $sequence is 32)[You draw back from the chasm. Back to safety and the much gentler darkness of the forest.
You've hit a limit. You can't do that. Or you don't want to.
|next>[But that's all right.]
](elseif: $sequence is 33)[You don't have to.
You'll talk to Gale. Find a solution.
Tell everyone else what you found. One of the others will be able to do this part. Wyll is definitely going to volunteer.
|next>[You leave the tent to get help.]
](elseif: $sequence is 34)[You leave the tent. You go out and find a different solution. Tell a different story.
Just not the one depicted in this game.
|goToTitle>[Return to title.]
](elseif: $sequence is 35)[
]{
(if: $sequence < 32)[(set: $in_intro to true)]
(click: ?putOut)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?galeAskKill)[(set: $sequence to 13)(go-to: $currentPassage)]
(click: ?galeAskTrue)[(set: $sequence to 14)(go-to: $currentPassage)]
(click: ?galeAskStop)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?leaveGale)[(set: $sequence to 16)(go-to: $currentPassage)]
(click: ?findShadowheart)[(set: $sequence to 21)(set: $lookingFor to "Shadowheart")(go-to: $currentPassage)]
(click: ?findLaezel)[(set: $sequence to 21)(set: $lookingFor to "Lae'zel")(go-to: $currentPassage)]
(click: ?astarionTent)[(set: $sequence to 28)(go-to: $currentPassage)]
(click: ?astarionTentSkip)[<script>addAchieve("Priorities"); musicLoop(""); </script>(set: $sequence to 28)(go-to: $currentPassage)]
(click: ?goToTomb)[(set: $sequence to 0)(go-to: "Act 1")]
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
}
(if: $sequence is 0)[You are inside of a tomb.
The space is twelve feet long and perhaps half as wide. A column-bracketed stone door stands at one end.
Interment niches line the walls, full of dusty remains.
There is a stone sarcophagus in the center of the room.
(if: $energy is 0)[|timePasses>[Rest.]
<span class="explain">//This will make time pass. Time is not kind, but you don't have a choice.//</span>
](else:)[|examineDoor>[Examine the door.]
|skip>[Examine the niches.]
|examineSarcophagus>[Examine the sarcophagus.]]{
(set: $healthDisplay to false)
(set: $practice_link_display to true)
(set: $tomb_link_display to false)
(if: $astarion_seen is true)[(set: $astarion_link_display to true)]
}
](elseif: $sequence is 1)[The stone door is almost as large as the wall. Decorative columns flank it.
It has no visible handle or latch.(if: $astarion_location is "door")[
Astarion is crouched behind one of the columns.
|lookAstarion>[Look at Astarion.]
|return>[Do something else.]
](else:)[
|return>[Continue]]{
(set: $healthDisplay to false)
(set: $practice_link_display to true)
(if: $astarion_seen is true)[(set: $astarion_link_display to true)]
}](elseif: $sequence is 2)[Stone cubbyholes set into the walls. Intended to hold cremated remains.
The contents of these niches have been vandalized. Vases broken and ash scattered everywhere.
Each shelf has an engraved epitaph beneath it.
<tw-link class='cyclingLink' data-cycling-texts='["In Memory.", "Beloved In Life.", "Now With The Gods.", "At Rest.", "Gone But Not Forgotten."]' onclick='clickCyclingLink(this, "In Memory.");'>In Memory.</tw-link>
|return>[Continue]{
(set: $healthDisplay to false)
(set: $practice_link_display to true)
(if: $astarion_seen is true)[(set: $astarion_link_display to true)]
}](elseif: $sequence is 3)[The stone sarcophagus in the center of the room is beautifully carved, though chipped in places.
A faded crest at one end implies that a noble is interred here.
(if: $astarion_location is "sarcophagus sitting up")[Astarion is sitting on top of it.](elseif: $astarion_location is "sarcophagus")[Astarion is lying on top of it.](else:)[It's sealed shut.]
(if: $astarion_location contains "sarcophagus")[|lookAstarion>[Look at Astarion.]
]|return>[Do something else.]{
(set: $healthDisplay to false)
(set: $practice_link_display to true)
(if: $astarion_seen is true)[(set: $astarion_link_display to true)]
}](elseif: $sequence is 4)[(if: $astarion_location is "sarcophagus")[Astarion is lying completely still on top of the sarcophagus. From a distance you thought he was a statue. He is covered so thickly in dust his body blends with the stone.
](elseif: $astarion_location is "sarcophagus sitting up")[Astarion is sitting up, on top of the sarcophagus, looking out into the darkness.
](else:)[Astarion is crouched, mostly concealed behind one of the columns.
]He looks (if: $astarion_mood is "curious")[curious.](elseif: $astarion_mood is "tense")[prickly and nervous.](elseif: $astarion_mood is "frightened")[frightened.](else:)[|exp>[bored.](click-replace: ?exp)[empty.]]
//Something exists beyond your perception. <span class="softEmph">Requires: Sight 2//</span>
(if: $energy is 0)[|timePasses>[Rest.]
<span class="explain">//This will make time pass. Time is not kind, but you don't have a choice.//</span>
](else:)[(if: $speech is 1)[|saySomething>[Say something.]
](else:)[|gray2>[Say something.]
(click: ?gray2)[<span class="explain">Requires Speech 1. Press the 'Practice Existing' button below.</span>]]
(if: $touch is 1)[|touchVampire>[Touch him.]
](else:)[|gray3>[Touch him.]
(click: ?gray3)[<span class="explain">Requires Touch 1. Press the 'Practice Existing' button below.</span>]]
|return>[Do something else.]]{
(set: $astarion_seen to true)
(set: $healthDisplay to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
}
](elseif: $sequence is 5)[(if: $astarion_location is "sarcophagus")[Astarion is lying completely still on top of the sarcophagus.](elseif: $astarion_location is "sarcophagus sitting up")[Astarion is sitting up on top of the sarcophagus.](else:)[Astarion is crouched, mostly concealed behind one of the columns.]
He looks (if: $astarion_mood is "curious")[curious.](elseif: $astarion_mood is "tense")[prickly and nervous.](elseif: $astarion_mood is "frightened")[frightened.](else:)[|exp>[bored.](click-replace: ?exp)[empty.]]
(display: "Touch Options Day 1"){
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
}](elseif: $sequence is 6)[(if: $target is "hand" and $astarion_mood is "curious")[(if: $touch_count is 0)[Astarion twitches his hand away from the contact.
He stares at the place where his hand just was for almost a half a minute.
Then, very slowly, he puts his hand down in exactly the same spot.
](elseif: $touch_count is 1)[Astarion winces.
//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//
But he does not move his hand away.(set: $hand_held to true)<script>updateTrust(1);</script>
](elseif: $touch_count is 2)[You have discovered that you can sustain contact for three seconds.
Then your fingers drift into nothingness, becoming insubstantial and falling through his hand.
](elseif: $touch_count is 3)[Astarion doesn't flinch at all this time.
He is staring fixedly at his hand where it sits on the stone.
](elseif: $touch_count is 4)[$astarion_name This is...
He trails off. Like he doesn't know how to finish that sentence.
](elseif: $touch_count > 4)[Astarion holds very still and watches someone invisible touch the back of his hand.
](display: "Touch Options Day 1"){
(set: $touch_count to it+1)
}
](elseif: $target is "hand" and $astarion_mood is "tense")[Astarion twitches his hand away.
He glares suspiciously at the place where it just was.
|lookAstarion>[Continue]
](else:)[(go-to: "Don't Touch Me")]
{
}](elseif: $sequence is 7)[(if: $whisper_count is 0)[(if: $astarion_location is "door")[Astarion twitches, and then looks in your direction warily.
](else:)[Astarion shifts slightly on top of the sarcophagus.
His expression doesn't change. He still looks |exp>[bored.](click-replace: ?exp)[empty.]
]](if: $whisper_count is 1)[(if: $astarion_location is "door")[Astarion looks in your direction warily.
](elseif: $sight is 1)[Astarion's head tilts in your direction.
]](elseif: $whisper_count is 2)[(if: $astarion_location contains "sarcophagus")[Astarion sits up. He does so slowly, as if the change takes effort.
]He starts to say something, but then coughs. A small cloud of dust from his mouth.
He tries to speak again.
$astarion_name Is someone there?
{
(set: $astarion_heard to true)
(if: $astarion_location is "sarcophagus")[(set: $astarion_location to "sarcophagus sitting up")]
(set: $astarion_mood to "curious")
}](else:)[Astarion looks towards the sound. It's so slight, he seems uncertain as to whether it actually happened.(if: $whisper_to_calm is 0 and $astarion_mood is "frightened")[
He seems a little less frightened.](if: $whisper_to_calm is 1 and $astarion_mood is "tense")[
He's starting to look less tense and more curious.]
]
(display: "Touch Options Day 1"){
(if: $whisper_count < 3)[(set: $whisper_count to it + 1)]
(set: $whisper_to_calm to it + 1)
(if: $whisper_to_calm > 0 and $astarion_mood is "frightened")[(set: $astarion_mood to "tense")]
(if: $whisper_to_calm > 1 and $astarion_mood is "tense")[(set: $astarion_mood to "curious")]
(set: $astarion_interacted to true)
}](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?examineDoor)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?examineSarcophagus)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?saySomething)[(set: $sequence to 0)(go-to: "A Voice In The Dark")]
(click: ?lookAstarion)[(set: $sequence to 4)(set: $healthDisplay to true)(go-to: $currentPassage)]
(click: ?touchVampire)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?touchHand)[(set: $sequence to 6)(set: $energy_change to -1)(display: "update energy silent")(set: $target to "hand")(go-to: $currentPassage)]
(click: ?touchShoulder)[(set: $sequence to 6)(set: $energy_change to -1)(display: "update energy silent")(set: $target to "shoulder")(go-to: $currentPassage)]
(click: ?touchHead)[(set: $sequence to 6)(set: $energy_change to -1)(display: "update energy silent")(set: $target to "head")(go-to: $currentPassage)]
(click: ?touchTap)[(set: $sequence to 7)(if: $first_contact is not " ")[(set: $first_contact to "tap")](set: $energy_change to -1)(display: "update energy silent")(set: $target to "tap")(go-to: $currentPassage)]
<script>
changeBackground("columnsFrame");
</script>
}{
(if: $drawAction is "erase")[
(set: $lastDrawn to $currentPassage)
(set: $fg_tree_count to it+1)
<script>
var c = document.getElementById('canv');
var context2D = c.getContext('2d');
context2D.clearRect(0, 0, c.width, c.height);
</script>
](elseif: $drawAction is "trees" and $lastDrawn is not $currentPassage)[
(set: $lastDrawn to $currentPassage)
(set: $fg_tree_count to it+1)
<script>
var c = document.getElementById('canv');
var context2D = c.getContext('2d');
var w = c.width = window.innerWidth;
var h = c.height = window.innerHeight;
var h2 = h * 1.0;
var ŭ = 0;
var cnt = 0;
var treePosition1 = geth("treePosition1");
var branches1 = geth("branches1");
var w1 = w* treePosition1;
var topiary1 = new branch(branches1, 0, 0);
var treePosition2 = geth("treePosition2");
var branches2 = geth("branches2");
var w2 = w* treePosition2;
var topiary2 = new branch(branches2, 0, 0);
var treePosition3 = geth("treePosition3");
var branches3 = geth("branches3");
var w3 = w* treePosition3;
var topiary3 = new branch(branches3, 0, 0);
var tree_count = geth("fg_tree_count");
function anim(){
if(tree_count == geth("fg_tree_count")){
cnt++;
ŭ-=.5;
if (cnt%2 && cnt < 200) {
draw();
if(treePosition2 != 0)
draw2();
if(treePosition3 != 0)
draw3();
}
window.requestAnimationFrame(anim);
}
}
anim();
function draw() {
context2D.save();
context2D.clearRect(0, 0, w, h);
context2D.translate(w1, h*0.98);
context2D.rotate(-Math.PI * 0.5);
topiary1.disp(context2D);
context2D.restore();
}
function draw2() {
context2D.save();
context2D.translate(w2, h*0.98);
context2D.rotate(-Math.PI * 0.5);
topiary2.disp(context2D);
context2D.restore();
}
function draw3() {
context2D.save();
context2D.translate(w3, h*0.98);
context2D.rotate(-Math.PI * 0.5);
topiary3.disp(context2D);
context2D.restore();
}
function branch(len, ang, gen){
this.len = len;
this.ang = ang;
this.gen = gen;
this.limb = [];
this.sway = 0;
this.mult = rnd(0.01, 0.1);
this.spawn = 0;
this.vel =0;
if(gen < 8){
this.limb.push(new branch(len*rnd(0.8, 0.99),
rnd(0, Math.PI/6), this.gen+1));
this.limb.push(new branch(len*rnd(0.8, 0.99),
rnd(0, -Math.PI/6), this.gen+1));
}
this.disp = function(context2D){
context2D.save();
this.vel *= 0.5;
var dif = 1-this.spawn;
this.vel += (dif*0.1);
this.spawn += this.vel;
context2D.strokeStyle = "#091a02";
context2D.lineWidth = 1;
context2D.beginPath();
context2D.rotate(this.ang + (Math.sin(this.sway*this.mult)*Math.PI/128));
context2D.moveTo(0, 0);
context2D.lineTo(this.len * this.spawn, 0);
context2D.stroke();
context2D.translate(this.len * this.spawn, 0);
if(this.spawn > 0.6){
for(var i = 0; i < this.limb.length; i++){
var limb = this.limb[i];
limb.disp(context2D);
}
}
context2D.restore();
};
}
function rnd(min, max){
return Math.random()*(max - min) + min;
}
</script>
]
(set: $drawAction to "")
}<span class="actText">Act 1</span>
“
It floated before her, a thing of shadow the size of a man. It seemed featureless except for its long, twiglike fingers and a mouth full of moon-white teeth.
”
— A Bastellus, summoned to Faerun by Sirana, Pool of Twilight, 1360 DR
|enterTomb>[Where are you?]
{
(set: $drawAction to "erase")
(display: "decorate campsite")
(set: $in_intro to false)
(display: "Act 1 Variables")
(set: $Quickstart to true)
<script>savePermSettings();</script>
(click: ?enterTomb)[(go-to: "Darkness")]
}(if: $sequence is 0)[You are in a cold, dark place.(if: $sight is 1 and $touch is 1 and $speech is 1)[
You are exhausted from practice. You can learn no more today.](if: $sight > 0 or $touch > 0 or $speech > 0)[
<span class="explain">To use what you learn press the 'Explore Tomb' button below.</span>]
(display: "Practice Cluster")
](elseif: $sequence is 1)[It's hard to see.
But that's not because it's dark.
It's because you're not entirely here?
Or you don't belong here?
It's hard to describe |rules>[but you know it's true.](click: ?rules)[
//Like being aware of the rules of a dream.//]
|next>[Continue]
](elseif: $sequence is 2)[You think you might be able to See more if you worked at it. Practiced.
(set: $canPracticeSight to true)
(display: "Practice Cluster")
](elseif: $sequence is 3)[You try to feel around and discover you cannot touch anything.
Your hand passes through the wall and the floor. You understand nothing of their nature or texture.
You're like a ghost here.
|next>[Continue]
](elseif: $sequence is 4)[You do feel the lightest pressure when you hold your hand flush with where you think the wall is.
You might be able to figure out how to Touch things if you worked at it. Practiced.
(set: $canPracticeTouch to true)
(display: "Practice Cluster")
](elseif: $sequence is 5)[You try to speak, but nothing happens.
You try to yell, and the sound is a hint of a whisper. Barely existent. Swallowed by the silence of the room.
|next>[Continue]
](elseif: $sequence is 6)[But a whisper is something. A place to start.
You might be able to Speak louder, if you worked at it. Practiced.
(set: $canPracticeSpeech to true)
(display: "Practice Cluster")
](elseif: $sequence is 7)[It takes a shocking amount of effort to practice this skill.
You feel like you've been diminished by this place. You used to be a person. |exp1>[Now you're a shadow.](click: ?exp1)[
//Indistinguishable among other shadows.//]
And you have a very limited pool of <span class="energy">Energy.</span>
|next>[Spend <span class="energy">1 Energy</span> to learn $practicing.]
|return>[No, something else.]{
(set: $energyDisplay to true)
}](elseif: $sequence is 8)[<span class="emph">(if: $firstPriority is "")[(set: $firstPriority to $practicing)//By your actions, your first priority is $practicing.//
](elseif: $secondPriority is "")[(set: $secondPriority to $practicing)//By your actions, your second priority is $practicing.//
](else:)[//By your actions, $practicing is your last priority.//
]</span>
You are a shadow. But you are a diligent shadow.(set: $energy_change to -1)(display: "update energy silent")
After a great deal of work you find (if: $practicing is "Sight")[that you can make out shapes around you.
<span class="emph">//Gained Sight: Level 1//</span>(set: $sight to 1)
You see walls. Columns.
|goTomb>[You are in a tomb.]
](elseif: $practicing is "Speech")[that you can whisper audibly.
<span class="emph">//Gained Speech: Level 1//</span>(set: $speech to 1)
You can form no discernible words. But you can whisper a perceptible sussurus of noise.
(if: $sight is 0 and $touch is 0)[|goVoice>[Continue]](elseif: $sight is 0)[|goTombBlind>[Continue]](else:)[|goTomb>[Continue]]
](elseif: $practicing is "Touch")[that you can feel the cold stone texture of the wall.
<span class="emph">//Gained Touch: Level 1//</span>(set: $touch to 1)
(if: $sight is 0)[The walls are smooth--crafted slabs, not rough cave. You think for a moment that you're in a dungeon.
|next>[But you are mistaken.]
](else:)[You think you could apply some slight pressure to it.
|goTomb>[Continue]
]]{
}
](elseif: $sequence is 9)[While searching the wall, your fingers encounter engraved plaques. You can discern words:
<tw-link class='cyclingLink' data-cycling-texts='["In Memory.", "Beloved In Life.", "Now With The Gods.", "At Rest.", "Gone But Not Forgotten."]' onclick='clickCyclingLink(this, "In Memory.");'>In Memory.</tw-link>
These are epitaphs.
|goTombBlind>[You are in a tomb.]
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?tryLook)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tryFeel)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?trySpeak)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?practiceSight)[(set: $practicing to "Sight")(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?practiceSpeech)[(set: $practicing to "Speech")(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?practiceTouch)[(set: $practicing to "Touch")(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?goTomb)[(set: $sequence to 0)(go-to: "Exploring The Tomb")]
(click: ?goTombBlind)[(set: $sequence to 0)(go-to: "Blind In The Tomb")]
(click: ?goVoice)[(set: $sequence to 0)(go-to: "A Voice In The Dark")]
(set: $healthDisplay to false)
}(if: $energy is 0)[(display: "rest text")
](else:)[(if: $sight is 0)[(if: $canPracticeSight is true)[|practiceSight>[Practice Sight.]](else:)[|tryLook>[Look around.]]
](if: $touch is 0)[(if: $canPracticeTouch is true)[|practiceTouch>[Practice Touch.]](else:)[|tryFeel>[Feel around.]]
](if: $speech is 0)[(if: $canPracticeSpeech is true)[|practiceSpeech>[Practice Speech.]](else:)[|trySpeak>[Call out.]]
]]{
(click: ?tombTransfer)[(set: $sequence to 0)(if: $sight > 0)[(go-to: "Exploring The Tomb")](elseif: $touch > 0)[(go-to: "Blind In The Tomb")](else:)[(go-to: "A Voice In The Dark")]]
(set: $practice_link_display to false)
(if: $sight > 0 or $touch > 0 or $speech > 0)[(set: $tomb_link_display to true)]
(if: $astarion_seen is true)[(set: $astarion_link_display to true)]
}Not finished yet.
(set: $drawAction to "erase")
(display: "decorate campsite"){<div class="prg-border" id="healthBar">
<div class="prg-bar" id="bar1"></div>
<div class="prg-text" id="text1">25/52</div>
<div class="prg-right-end after-right-darkred" id="right1"></div>
<div class="prg-left-end after-left-brightred" id="left1"></div>
</div>
<input type="range" min="0" max="52" value="25" id="val1">
<div class="prg-border" id="energyBar">
<div class="prg-black-box">
<div class="prg-inner-bar-small"></div>
<div class="prg-bar-small" id="bar2"><div class="prg-text-small" id="text2">13</div></div>
</div>
<div class="prg-right-end" id="right2"></div>
<div class="prg-left-end" id="left2"></div>
</div>
<input type="range" min="0" max="10" value="8" id="val2">
<script>
$("#val1").on("input change", function() {
updateValueHealth($("#val1").val(),52);
});
$("#val2").on("input change", function() {
updateValueEnergy($("#val2").val(),10);
});
updateValueHealth(25,52);
updateValueEnergy(8,10);
</script>
}{
(set: $health to $health + $health_change)
(set: $display_health to $health_change)
(if: $display_health < 0)[(set: $display_health to 0-it)]
(if: $health > $maxHealth)[(set: $health to $maxHealth)]
(if: $health < 0)[(set: $health to 0)]
(if: $health < 1)[(set: $die_next_screen to true)]
(if: $health_change > 0)[<script>playAudio("aa_tap2");</script><span class='self'>//Gained $display_health Health//</span>](else:)[<script>playAudio("aa_damage");</script><span class='health'>//Lost $display_health Health//</span>]
}(if: $sequence is 0)[You are inside of a tomb.(if: $tomb_first_feel is not true)[
You feel your way along the walls of the room. It is perhaps five paces long and three paces wide.
There are columns on one wall, framing a door. The other walls are lined with shelves.
You abandon the walls and find a stone box dominating the center of the room.](else:)[
It is perhaps five paces long and three paces wide.
There are columns on one wall, framing a door. The other walls are lined with shelves.
(if: $tomb_sarcophagus_found is true)[A sarcophagus](else:)[A stone box] dominates the center of the room.]
|next>[Feel the door.]
|skip>[Feel the shelves.]
|sarcophagus>[Feel the (if: $tomb_sarcophagus_found is true)[sarcophagus](else:)[box].]{
<script>addAchieve("since feeling is first");</script>
(set: $tomb_first_feel to true)
(set: $practice_link_display to true)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
}
](elseif: $sequence is 1)[The stone door is almost as large as the wall--you can trace its shape by the seam.
You run your hands all over but you can find no groove or opening mechanism.(if: $astarion_location is "door")[
There is someone crouched behind one of the columns.
|gray1>[Look at them.]
(click: ?gray1)[<span class="explain">Requires Sight 1. Press the 'Practice Existing' button below.</span>]
(if: $whispered_once_corner is true)[|gray4>[Say something.] (click: ?gray4)[//That doesn't seem productive.//]
](elseif: $speech is 1)[|speakInCorner>[Say something.]
](else:)[|gray2>[Say something.]
(click: ?gray2)[<span class="explain">Requires Speech 1. Press the 'Practice Existing' button below.</span>]]
(if: $poked_vampire is true)[|gray3>[Touch them.] (click: ?gray3)[//That doesn't seem productive.//]](else:)[|pokeVampire>[Touch them. //Cost: <span class="energy">1 Energy</span>//]]
|return>[Do something else.]
](else:)[
|return>[Continue]]{
(set: $practice_link_display to true)
}](elseif: $sequence is 2)[The shelves are thick with dust. No. Too thick to be dust. Ashes?
Also there's broken pottery. Your fingers find a sharp point. You think for a moment you've cut yourself, but no. You don't exist enough to be hurt like that.
Each shelf has an engraved epitaph beneath it.
<tw-link class='cyclingLink' data-cycling-texts='["In Memory.", "Beloved In Life.", "Now With The Gods.", "At Rest.", "Gone But Not Forgotten."]' onclick='clickCyclingLink(this, "In Memory.");'>In Memory.</tw-link>
|return>[Continue]{
(set: $practice_link_display to true)
}](elseif: $sequence is 3)[The stone box is engraved with filigree decorations and chipped in places. You pick out a shield on the front, and symbols. Some kind of crest.
This is a sarcophagus. For someone important enough to have a family crest.(if: $astarion_location is "sarcophagus" or $astarion_location is "sarcophagus sitting up")[
You rise to check the top. See if it's open.
(if: $astarion_location is "sarcophagus")[There's someone lying on top of it.](else:)[There's someone sitting on top of it.](if: $astarion_heard is true)[ You suspect it's Astarion.]
|gray1>[Look at them.]
(click: ?gray1)[<span class="explain">Requires Sight 1. Press the 'Practice Existing' button below.</span>]
(if: $speech is 1)[|saySomething>[Say something.]
](else:)[|gray2>[Say something.]
(click: ?gray2)[<span class="explain">Requires Sight 1. Press the 'Practice Existing' button below.</span>]]
(if: $poked_vampire is true)[|gray3>[Touch them.] (click: ?gray3)[//That doesn't seem productive.//]](else:)[|touchVampire>[Touch them. //Cost: <span class="energy">1 Energy</span>//]]
|return>[Do something else.]
](else:)[
It's sealed shut.
|return>[Continue]
]{
(set: $tomb_sarcophagus_found to true)
(set: $practice_link_display to true)
}](elseif: $sequence is 4)[(if: $astarion_location is "sarcophagus sitting up")[There's a twitch of movement.
Something hits you. Only it doesn't. It goes through you.
It's an alarming feeling, having someone's hand pass through yours. As though you were nothing.
You probably shouldn't do that blind.
|sarcophagus>[Continue]
{
(set: $fuck_off_count to it+1)
(set: $poked_vampire to true)
(set: $astarion_mood to "tense")
}
](else:)[There's a sudden sense of movement. They lash out at you. Lash *through* you.
It's an alarming feeling, having someone's hand pass through your chest. As though you were nothing.
It doesn't hurt you. Though you are left with the impression that someone might have just been hurt.
(set: $health_change to -3)(display: "update health")
You hear a thump and a shuffle of movement.
They're gone.
|return>[Continue]{
(set: $fuck_off_count to it+1)
(set: $astarion_location to "door")
(set: $astarion_mood to "frightened")
(set: $first_contact to "fear")
}]
](elseif: $sequence is 5)[They flinch.
(set: $health_change to -3)(display: "update health")<script>updateTrust(-1);</script>
|door>[Continue]{
(set: $fuck_off_count to it+1)
(set: $poked_vampire to true)
}](elseif: $sequence is 6)[You can't tell if there's a response to your whispering.
You really wish that you could See what's going on.
//Press the 'Practice Existing' button below.//(set: $practice_link_display to true)
|door>[Do something else.]{
(set: $whispered_once_corner to true)
(if: $first_contact is not " ")[(set: $first_contact to "voice")]
}](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?door)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?sarcophagus)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?saySomething)[(set: $sequence to 0)(go-to: "A Voice In The Dark")]
(click: ?touchVampire)[(set: $energy_change to -1)(display: "update energy silent")(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?pokeVampire)[(set: $energy_change to -1)(display: "update energy silent")(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?speakInCorner)[(set: $energy_change to -1)(display: "update energy silent")(set: $sequence to 6)(go-to: $currentPassage)]
}(if: $sequence is 0)[(if: $touch is 1 and $sight is 0 and $whisper_count > 3)[You can't see what's going on around you.
Before you make any more noise, you feel like you should do something about that.
](elseif: $touch is 1 or $sight is 1)[You can't Speak well enough to form clear words.
But you can whisper loudly enough to make it clear that you are present.
](elseif: $whisper_count is 4)[You have no idea where you are.
You have no idea what is around you.
And before you make any more noise, you feel like you should do something about that.
//Press the 'Practice Existing' button below.//
](else:)[You have no idea where you are.
You have no idea what is around you.
But if you want, you can break the silence.
](display: "Voice Options"){
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[(if: $whisper_count is 0)[(if: $whistling is true)[You whistle.<script>addAchieve("Dusksong");</script>(if: $first_contact is not " ")[(set: $first_contact to "music")]
You manage a few notes. Just enough to imply a song. It's very soft.](else:)[You whisper.(if: $first_contact is not " ")[(set: $first_contact to "voice")]
Your voice is very soft. Just on the edge of perceptible.]
But you are audible. This room is completely silent.
Well. It was a moment ago. Then you happened.
|next>[Continue]{
<script>addAchieve("Hello Crypt");</script>
(set: $astarion_interacted to true)
}](elseif: $whisper_count is 1)[You whisper. There's no meaning to it. But it creates a sense of presence.
(if: $sight is 1 and $astarion_location is "door")[Astarion looks in your direction warily.
](elseif: $sight is 1)[Astarion's head tilts in your direction.
](elseif: $touch is 1)[More movement from on top of the sarcophagus.
](else:)[You might have heard movement again. But you're not sure.
]
(display: "Voice Options")
](elseif: $whisper_count is 2)[(if: $whistling is true)[You whistle the next few bars of the song.](else:)[You whisper again.]
(if: $sight is 1 and $astarion_location is "door")[Astarion starts to say something, but then coughs. A small cloud of dust from his mouth.
He tries to speak again.
](elseif: $sight is 1)[Astarion sits up. He does so slowly, as if the change takes effort.
He starts to say something, but then coughs. A small cloud of dust from his mouth.
He tries to speak again.
](elseif: $touch is 1)[A great deal of movement this time. The person on top of the sarcophagus slowly sits up.
You hear someone start to speak. Then you hear coughing.
Then they try to speak again.
](else:)[You hear someone start to speak.
Then you hear coughing.
Then they try to speak again.
]|skip>[Continue]
](elseif: $whisper_count is 3)[(if: $whistling is true)[You whistle.](else:)[You whisper.]
(if: $sight is 1)[Astarion turns his head, tracking where the sound comes from.
He mutters something to himself that you can only just hear.
$astarion_name I'm being haunted.
$astarion_name Fantastic.
(display: "Voice Options"){
}](else:)[//Something happens beyond your perception. Requires: Sight 1</span>//
You really wish that you could See what's going on.
//Press the 'Practice Existing' button below.//(set: $practice_link_display to true)
]
](elseif: $whisper_count is 4)[(if: $whistling is true)[You whistle.
$astarion_name That's music.<script>updateTrust(1);</script>
The words are vague and a bit uncertain. As if this is something he's only just remembered.](else:)[You whisper.
$astarion_name Repetitive ghost, aren't you?]
(display: "Voice Options")
](elseif: $whisper_count is 5)[(if: $whistling is true)[You whistle.
Astarion listens to you.](else:)[You whisper.
$astarion_name I suppose it's better than silence.]
(display: "Voice Options")
](else:)[(if: $whistling is true)[You whistle.](else:)[You whisper meaningless nonsense.]
Astarion listens to you.
(display: "Voice Options")
]{
(set: $whisper_count to it + 1)
(if: $whistling is true and $whisper_count is 1)[(set: $whisper_count to it + 1)]
(set: $whisper_to_calm to it + 1)
(if: $whisper_to_calm > 1 and $astarion_mood is "frightened")[(set: $astarion_mood to "tense")]
(if: $whisper_to_calm > 2 and $astarion_mood is "tense")[(set: $astarion_mood to "curious")]
}
](elseif: $sequence is 2)[(if: $sight is 1 and $astarion_location is "door")[Astarion twitches, and then looks in your direction warily.
](elseif: $sight is 1)[Astarion shifts slightly on top of the sarcophagus.
His expression doesn't change. He still looks |exp>[bored.](click-replace: ?exp)[empty.]
](elseif: $touch is 1)[Something happens nearby. A shifting movement.
The person lying on top of the sarcophagus just moved.
](else:)[You hear something happen in response.
A slight shuffle of movement from somewhere in front of you.
But nothing more.
]
(display: "Voice Options")
](elseif: $sequence is 3)[(if: $sight is 0)[You hear a voice. Hoarse, as if from disuse, but still familiar.
]$astarion_name Is someone there?
(display: "Voice Options"){
(set: $astarion_heard to true)
(if: $astarion_location is "sarcophagus")[(set: $astarion_location to "sarcophagus sitting up")]
(set: $astarion_mood to "curious")
}
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
]{
(click: ?whistle)[(set: $sequence to 1)(set: $energy_change to -1)(display: "update energy silent")(set: $whistling to true)(set: $class to "bard")(go-to: $currentPassage)]
(click: ?whisper)[(set: $sequence to 1)(set: $energy_change to -1)(display: "update energy silent")(set: $whistling to false)(go-to: $currentPassage)]
(click: ?returnTouch)[(set: $sequence to 3)(go-to: "Blind In The Tomb")]
(click: ?returnSight)[(set: $sequence to 4)(go-to: "Exploring The Tomb")]
}(if: $sequence is 0)[You consider what to do next.
(if: $energy is 0)[(display: "rest text")
](else:)[|practiceSight>[Practice Sight.]
|practiceTouch>[Practice Touch.]
|practiceSpeech>[Practice Speech.]
]{
(set: $learnDisplay to false)
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
(click: ?practiceSight)[
(set: $sequence to 1)
(set: $learnType to "Sight")
(set: $currentStat to $sight)
(set: $currentLearning to $sightLearning)
(go-to: $currentPassage)
]
(click: ?practiceTouch)[
(set: $sequence to 1)
(set: $learnType to "Touch")
(set: $currentStat to $touch)
(set: $currentLearning to $touchLearning)
(go-to: $currentPassage)
]
(click: ?practiceSpeech)[
(set: $sequence to 1)
(set: $learnType to "Speech")
(set: $currentStat to $speech)
(set: $currentLearning to $speechLearning)
(go-to: $currentPassage)
]
}](elseif: $sequence is 1)[{
(display: "Set Max Learning")
}
(if: $currentLearning is $maxLearning and $currentStat < 6)[(set: $currentStat to it+1)<span class="emph">//Gained $learnType: Level $currentStat//</span>
(if: $learnType is "Sight")[(if: $currentStat is 1)[How on earth did you get here? Tell Abigail.
](elseif: $currentStat is 2)[You see Astarion more clearly, and have a sense of how much he trusts you.
](elseif: $currentStat is 3)[You see Astarion more clearly, and have a sense of how he feels.
](elseif: $currentStat is 4)[You see Astarion more clearly, and have a sense of how calm and happy he is.
](elseif: $currentStat is 5)[You see more details in the room. You notice there's something that gleams silver, over by the niches.
](elseif: $currentStat is 6)[You can see things that should be hidden.
]
](elseif: $learnType is "Touch")[(if: $currentStat is 1)[You can feel and touch things with your fingertips.
](elseif: $currentStat is 2)[You can pass through solid objects.
](elseif: $currentStat is 3)[You can push objects.
](elseif: $currentStat is 4)[You can feel and touch things with your arms. And therefore hug people.
](elseif: $currentStat is 5)[You can lift and carry objects.
](elseif: $currentStat is 6)[You can hit things.
]
](elseif: $learnType is "Speech")[(if: $currentStat is 1)[You can produce unintelligible whispering.
](elseif: $currentStat is 2)[You can speak a single, understandable word.
](elseif: $currentStat is 3)[You can speak two words.
](elseif: $currentStat is 4)[You can speak three words.
](elseif: $currentStat is 5)[You can make a loud, distracting noise.
](elseif: $currentStat is 6)[You can shout.
]
]{
(if: $currentStat < 6)[(set: $currentLearning to 0)]
(display: "Set Max Learning")
<script>playAudio("aa_clue");</script>
}](else:)[(if: $currentStat is 6)[You have learned $learnType as well as you can.
There is no more to practice.](elseif: $firstPriority is $learnType)[$learnType was your first priority.](elseif: $secondPriority is $learnType)[$learnType was your second priority.](else:)[$learnType was your last priority.]
]{
(set: $level_energy to $maxLearning - $currentLearning)
(if: $level_energy > $energy)[(set: $level_energy to $energy)]
}(if: $energy is 0)[(display: "rest text")
](else:)[(if: $currentStat is not 6)[(if: $level_energy is not 1)[|learn>[Spend <span class="energy">1 Energy</span>]
](if: $energy > 4 and $level_energy > 4 and $level_energy is not 5)[|learnLots>[Spend <span class="energy">5 Energy</span>]
]|level>[Spend <span class="energy">$level_energy Energy</span>]
]|return>[Learn something else.]]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
(click: ?learn)[
(set: $currentLearning to it+1)
(set: $energy_change to -1)
(display: "update energy silent")
(go-to: $currentPassage)]
(click: ?learnLots)[
(set: $currentLearning to it+5)
(set: $energy_change to -5)
(display: "update energy silent")
(go-to: $currentPassage)]
(click: ?level)[
(set: $currentLearning to it+$level_energy)
(set: $energy_change to (0-$level_energy))
(display: "update energy silent")
(go-to: $currentPassage)]
(set: $learnDisplay to true)
(if: $learnType is "Sight")[
(set: $sight to $currentStat)
(set: $sightLearning to $currentLearning)
](elseif: $learnType is "Touch")[
(set: $touch to $currentStat)
(set: $touchLearning to $currentLearning)
](elseif: $learnType is "Speech")[
(set: $speech to $currentStat)
(set: $speechLearning to $currentLearning)
]
}](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(set: $healthDisplay to false)
}{(set: $energy to $energy + $energy_change)
(if: $energy > $maxEnergy)[(set: $energy to $maxEnergy)]
(if: $energy < 0)[(set: $energy to 0)]
<script>playAudio("aa_clock_tick1");</script>
}(if: $sight is 1 or $whisper_count < 4)[(if: $whistling is not true)[(if: $energy is 0)[//Whisper. Not enough Energy.//](else:)[|whisper>[Whisper. //Cost: <span class="energy">1 Energy</span>//]]
](if: $whistling is true or $class is "bard")[(if: $energy is 0)[//Whistle. Not enough Energy.//](else:)[|whistle>[`[BARD]` Whistle. //Cost: <span class="energy">1 Energy</span>//]]
]](if: $sight is 1)[|returnSight>[Do something else.]
](elseif: $touch is 1)[|returnTouch>[Do something else.]
]{
(set: $practice_link_display to true)
}(if: $energy is 0)[//Tap the stone nearby. Not enough Energy.//](else:)[|touchTap>[Tap the stone nearby. //Cost: <span class="energy">1 Energy</span>//]]
(if: $energy is 0)[//Touch his hand. Not enough Energy.//](else:)[|touchHand>[Touch his hand. //Cost: <span class="energy">1 Energy</span>//]]
|lookAstarion>[Do something else.]{
(set: $practice_link_display to true)
}(if: $fuck_off_count > 1)[$astarion_name Get the FUCK away from me.
You feel a rush of movement as you're hurled away.
Up. Out of the room. Out of the dream.
|forestEnd>[Continue]{
}](elseif: $astarion_location is "sarcophagus")[Astarion flinches into violent motion. He lashes out at you. Lashes *through* you.
It's an alarming feeling, having someone's hand pass through your chest. As though you were nothing.
It doesn't hurt you. You haven't been hurt by this.
(set: $health_change to -3)(display: "update health")
Astarion scrambles off of the sarcophagus and vanishes into the shadows near the door.
|returnFromHere>[Continue]{
(set: $astarion_location to "door")
(click: ?returnFromHere)[(set: $sequence to 0)(go-to: "Exploring The Tomb")]
}](elseif: $fuck_off_count is 0)[Astarion flinches. He lashes out at you. Lashes *through* you.
It's an alarming feeling, having someone's hand pass through your arm. As though you were nothing.
But it doesn't hurt. You haven't been hurt by this.
(set: $health_change to -1)(display: "update health")
|returnFromHere>[Continue]{
(click: ?returnFromHere)[(set: $sequence to 5)(go-to: "Exploring The Tomb")]
}](else:)[Astarion flinches.
(set: $health_change to -1)(display: "update health")
|returnFromHere>[Continue]{
(click: ?returnFromHere)[(set: $sequence to 5)(go-to: "Exploring The Tomb")]
}]{
(set: $astarion_mood to "frightened")
<script>updateTrust(-1);</script>
(set: $whisper_to_calm to 0)
(set: $touch_count to 0)
(set: $fuck_off_count to it+1)
}{
(if: $day > 162)[(goto: "Wake In The Forest, Act 2")]
}(if: $sequence is 0)[You wake up in the forest.
You're on a bedroll near the campfire. A blanket has been draped over you.
A tall, red woman is sitting beside you.
|next>[Continue]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
}](elseif: $sequence is 1)[$karlach You're awake!
She looks hopefully from you to the person lying beside you.
|next>[Continue]
](elseif: $sequence is 2)[Astarion is also on a bedroll near the campfire.
He is still asleep. Completely still. Not breathing.
He looks somehow even paler than usual.
|next>[Continue]
](elseif: $sequence is 3)[$karlach Shit. He's still...
$karlach Okay. That's okay.
$karlach Gale's working on it. And Wyll. Everyone magic. Come on.
She pulls you to your feet. You are dragged across camp and into trying to find a way to help. From the outside.
Good luck.
|goToTitle>[Return to title.]
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
]{
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
<script>changeBackground("");</script>
(set: $energyDisplay to false)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
}
(if: $sequence is 0)[{
(set: $energyDisplay to true)
(set: $healthDisplay to true)
(set: $learnDisplay to false)
(if: $active_event is "mouse")[
(set: $active_event to "empty")
(set: $mouse_location to "")
]
(if: $active_event is "teeth")[
(if: $teeth_hit_count > 1)[(set: $active_event to "teeth leave fed")]
(elseif: $astarion_location is $teeth_location and $astarion_hiding is not true)[(set: $active_event to "teeth found vampire")]
(else:)[(set: $active_event to "teeth leave")]
(set: $teeth_location to "")
]
(if: $active_event is "ochre arrives" or $active_event is "sigh arrives" or $active_event is "astarion message" or $active_event is "cold begins" or $active_event is "blood appears" or $active_event is "ghost attack")[
(set: $active_event to "empty")
]
(if: $cold_state is "ending")[
(set: $cold_state to "inactive")
]
(if: $fuck_off_forgiveness is 1)[
(set: $fuck_off_count to it-1)
(if: $fuck_off_count < 0)[(set: $fuck_off_count to 0)]
(set: $fuck_off_forgiveness to 0)
](elseif: $fuck_off_forgiveness > 0)[
(set: $fuck_off_forgiveness to it-1)
]
(set: $godey_alert to "")
(set: $godey_spike_count to 0)
(if: $godey_state is "paranoid")[(set: $godey_state to "passive")]
(if: $active_event is "astarion godey response")[(set: $active_event to "empty")]
(if: $hallway_spike_state is "broken")[
(if: $godey_state is "passive")[(set: $godey_state to "paranoid")(set: $godey_alert to "arriving")(set: $hallway_spike_state to "intact")]
]
(if: $blood_state is "hallway")[(set: $blood_state to "gone")]
(if: $difficulty is "explorer")[(set: $health_change to -1)]
(else:)[(set: $health_change to -3)]
(if: $astarion_mood is "frightened")[(set: $health_change to it - 3)
](elseif: $astarion_mood is "tense")[(set: $health_change to it - 2)
](elseif: $astarion_mood is "bored")[(set: $health_change to it - 1)
](elseif: $astarion_mood is "curious")[(set: $health_change to it + 0)
](elseif: $astarion_mood is "calm")[(set: $health_change to it + 2)
](elseif: $astarion_mood is "excited")[(set: $health_change to it + 3)
](elseif: $astarion_mood is "happy")[(set: $health_change to it + 3)
]
(if: $astarion_inventory contains 'clive')[(set: $health_change to it + 1)]
(if: $astarion_cleanliness is "clean")[(set: $health_change to it + 1)]
(if: $cold_astarion_state is "cold")[(set: $health_change to it - 2)]
(if: $cold_astarion_state is "freezing")[(set: $health_change to it - 5)]
(if: $blood_intensity > 0)[(set: $health_change to it - $blood_intensity)(set: $blood_intensity to it - 1)]
(if: $astarion_interacted is false)[
(set: $interact_every_day to false)
(if: $sigh_solitude_count > -1)[(set: $sigh_solitude_count to it+1)]
(if: $sigh_solitude_count is 3)[(set: $cold_state to "ending")(set: $cold_astarion_state to "fine")(set: $sigh_solitude_count to -1)]
(if: $neglect_health_penalty is 0 or $difficulty is "explorer")[(set: $neglect_health_penalty to it+2)]
(else:)[(set: $neglect_health_penalty to it+6)]
(set: $health_change to it - $neglect_health_penalty)
(set: $consecutive_interactions to 0)
](else:)[
(if: $sigh_solitude_count > 0)[(set: $sigh_solitude_count to -1)]
(set: $neglect_health_penalty to 0)
(set: $consecutive_interactions to it+1)
(if: $consecutive_interactions is 3 and $astarion_trust < 7)[
<script>updateTrust(1);</script>
(set: $consecutive_interactions to 0)
]
]
(if: $vampire_enrichment_score > 22)[(set: $health_change to it + 4)
](elseif: $vampire_enrichment_score > 16)[(set: $health_change to it + 3)
](elseif: $vampire_enrichment_score > 12)[(set: $health_change to it + 2)
](elseif: $vampire_enrichment_score > 6)[(set: $health_change to it + 1)
]
(if: $active_event is "teeth found vampire")[(set: $health_change to -10)]
(if: $health_change > -1 and $astarion_mood is not "happy" and $day < 163)[(set: $health_change to -1)]
(if: $health_change > 0 and $day < 163)[(set: $health_change to 0)]
(if: $health_change is 1 or $health_change is 2)[(set: $health_change to 1)]
(if: $health_change is 3 or $health_change is 4)[(set: $health_change to 2)]
(if: $health_change is 5 or $health_change is 6)[(set: $health_change to 3)]
(if: $health_change > 6)[(set: $health_change to 4)]
(if: $astarion_inventory contains 'clive')[(set: $health_change to it + 1)]
(if: $astarion_cleanliness is "clean")[(set: $health_change to it + 1)]
(set: $health to $health + $health_change)
(if: $health > $maxHealth)[(set: $health to $maxHealth)]
(if: $health < 0)[(set: $health to 0)]
(if: $health < 1)[(set: $die_next_screen to true)]
(if: $player_inventory contains 'clive')[(set: $maxEnergy to 11)]
(else:)[(set: $maxEnergy to 10)]
(if: $player_hurt > 0)[(set: $energy to $maxEnergy-$player_hurt)]
(else:)[(set: $energy to $maxEnergy)]
<script>
playAudio("aa_clock_ticks");
</script>
(set: $day to it + 1)
(set: $event_is_stale to true)
(set: $event_forced to false)
(set: $astarion_yesterday_mood to $astarion_mood)
(set: $astarion_mood to "bored")
(set: $astarion_day_activity to "empty")
(set: $vampire_enrichment_score to 0)
(set: $enrichment_list to "base")
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
(set: $touch_warning to 0)
(set: $astarion_interacted to false)
(set: $astarion_greeted to false)
(set: $astarion_howareyou to false)
(set: $astarion_explored to false)
(set: $astarion_refuse_interaction to false)
(set: $astarion_hiding to false)
(set: $event_interrupts_work to false)
(set: $astarion_asked_about_work to false)
(set: $something_appearing to "")
(set: $astarion_activity to "empty")
(set: $astarion_play_activity to "empty")
(set: $activity_health_loss to 0)
(set: $activity_health_gain to 0)
(set: $sigh_greeted to false)
(set: $sigh_advice_given to false)
(set: $sigh_story_told to false)
(set: $sigh_location to "absent")
(if: $scroll_state is "appearing")[(set: $scroll_total_energy to it+10)]
(if: $scroll_total_energy > 99)[
(set: $active_event to "knock knock")
(set: $event_interrupts_work to true)
(set: $astarion_location to "door")
(set: $event_forced to true)
](elseif: $day is 152)[
(if: $astarion_location contains "sarcophagus")[
(set: $astarion_location to "sarcophagus")]
(if: $hand_held is true)[(set: $touch_threshold_count to 4)]
(else:)[(set: $touch_threshold_count to 0)]
(set: $active_event to "astarion first questions")
(set: $event_is_stale to false)
](elseif: $day is 155)[
(set: $active_event to "astarion breakdown")
(set: $event_interrupts_work to true)
(set: $astarion_location to "door")
(set: $event_is_stale to false)
(set: $event_forced to true)
](elseif: $day is 157)[
(set: $active_event to "mouse")
(set: $mouse_location to "niches")
(set: $mouse_seen to false)
(if: $astarion_location is "niches")[(set: $mouse_location to "sarcophagus")]
](elseif: $day is 158)[
(set: $active_event to "teeth")
(set: $teeth_location to $astarion_location)
](elseif: $day is 160 and $astarion_trust > 5)[
(set: $active_event to "astarion dont leave")
(set: $event_interrupts_work to true)
(set: $event_is_stale to false)
(set: $astarion_mood to "tense")
](elseif: $day is 162)[
(set: $active_event to "astarion name")
(set: $event_is_stale to false)
](elseif: $day is 163)[
(set: $active_event to "message")
(set: $event_interrupts_work to true)
(set: $event_is_stale to false)
(set: $event_forced to true)
](elseif: $day is 164)[
(set: $active_event to "sigh arrives")
(set: $sigh_location to "tomb")
(if: not ($objects_taken contains "clive"))[
(set: $astarion_inventory to it + (a: 'clive'))
(set: $objects_taken to it + (a: 'clive'))
(set: $astarion_activity to "examine clive")
(set: $astarion_day_activity to "examine clive")
]
](elseif: $day is 165)[
(set: $knife_state to "appearing")
(set: $something_appearing to "Something is changing near the niches.")
(set: $active_event to "ochre arrives")
(set: $ochre_state to "present")
(set: $event_interrupts_work to true)
(set: $astarion_day_activity to "sharpen pottery")
(set: $astarion_mood to "tense")
(set: $astarion_location to "atop sarcophagus")
](elseif: $day is 166)[
(if: $sigh_visits is "yes")[(set: $sigh_location to "tomb")]
(if: $knife_state is "appearing")[(set: $knife_state to "present")(set: $something_appearing to "Something has changed near the niches.")]
(set: $astarion_inventory to it + (a: 'pottery shard'))
(set: $astarion_location to "door")
(if: $ash_trail_state is "to hall" and $godey_state is "paranoid")[(set: $active_event to "ochre leaves godey")(set: $godey_alert to "")(set: $ochre_state to "gone")(set: $godey_state to "burned")]
(elseif: $ash_trail_state is "to hall")[(set: $active_event to "ochre leaves")(set: $ochre_state to "gone")]
(elseif: $astarion_inventory contains 'knife')[(set: $astarion_activity to "murder ochre knife")(set: $ochre_state to "dead")]
(else:)[
(set: $event_interrupts_work to true)
(set: $astarion_activity to "murder ochre shard")
(set: $ochre_state to "dead")
(set: $activity_health_loss to 8)
(if: $ochre_hit_count is 1)[(set: $activity_health_loss to it-3)]
(if: $ochre_hit_count is 2)[(set: $activity_health_loss to it-3)]
(if: $astarion_hands is "healed")[(set: $activity_health_loss to it-2)]
(if: $ash_trail_state is "to door")[(set: $activity_health_loss to it-3)]
(if: $activity_health_loss < 0)[(set: $activity_health_loss to 0)]
]
(set: $ash_trail_state to "gone")
](elseif: $day is 167)[
(if: $sigh_visits is "yes")[(set: $sigh_location to "tomb")]
(if: not ($objects_taken contains "knife"))[
(set: $astarion_inventory to it + (a: 'knife'))
(set: $objects_taken to it + (a: 'knife'))
(set: $astarion_activity to "examine knife")
(set: $astarion_day_activity to "examine knife")
(set: $astarion_sarcophagus_work to true)
]
(set: $blood_state to "appearing")
(set: $active_event to "cold begins")
(set: $cold_state to "active")
(set: $cold_astarion_state to "cold")
(if: $astarion_inventory contains 'shroud')[(set: $cold_astarion_state to "blanket")]
](elseif: $day is 168)[
(set: $active_event to "blood appears")
(set: $blood_state to "present")
(set: $blood_intensity to 0)
(set: $event_interrupts_work to true)
(set: $event_forced to true)
](elseif: $day is 169)[
(if: $sigh_visits is "yes")[(set: $sigh_location to "tomb")]
(if: $cold_astarion_state is "cold")[(set: $amber_state to "appearing")(set: $something_appearing to "Something is changing near the door.")]
(elseif: $health < 15 or $astarion_hands is not "healed")[(set: $potion_state to "appearing")(set: $something_appearing to "Something is changing near the door.")]
(else:)[(set: $toolkit_state to "appearing")(set: $something_appearing to "Something is changing near the door.")]
](elseif: $day is 170)[
(if: $amber_state is "appearing")[(set: $amber_state to "present")(set: $something_appearing to "Something has changed near the door.")]
(if: $potion_state is "appearing")[(set: $potion_state to "present")(set: $something_appearing to "Something has changed near the door.")]
(if: $toolkit_state is "appearing")[(set: $toolkit_state to "present")(set: $something_appearing to "Something has changed near the door.")]
(if: $cold_astarion_state is "cold")[(set: $cold_astarion_state to "freezing")(set: $astarion_mood to "frightened")]
](elseif: $day is 171)[
(if: $cold_astarion_state is "freezing")[(set: $event_interrupts_work to true)]
(if: $amber_state is "present" and not ($objects_taken contains "amber"))[
(set: $astarion_inventory to it + (a: 'amber'))
(set: $objects_taken to it + (a: 'amber'))
(set: $cold_astarion_state to "amber")
(set: $active_event to "finds amber")
]
(if: $toolkit_state is "present" and not ($objects_taken contains "toolkit"))[
(set: $astarion_inventory to it + (a: 'toolkit'))
(set: $objects_taken to it + (a: 'toolkit'))
(set: $astarion_activity to "examine toolkit")
(set: $astarion_day_activity to "examine toolkit")
]
(if: $potion_state is "present" and not ($objects_taken contains "potion"))[
(set: $objects_taken to it + (a: 'toolkit'))
(set: $active_event to "finds potion")
]
(if: $cold_astarion_state is "freezing")[(set: $active_event to "death by freezing")]
](elseif: $day is 172)[
(set: $active_event to "ghost attack")
(set: $event_interrupts_work to true)
(set: $astarion_location to "door")
(set: $event_forced to true)
(set: $enemyHealthDisplay to false)
](elseif: $day is 173)[
(if: $sigh_visits is "yes")[(set: $sigh_location to "tomb")]
(set: $cold_state to "increased")
(if: $cold_astarion_state is "fine")[(set: $cold_astarion_state to "cold")]
](elseif: $day is 174)[
(set: $active_event to "knock knock")
(set: $event_interrupts_work to true)
(set: $astarion_location to "door")
(set: $event_forced to true)
]
(if: $astarion_working_on is "")[
(if: $astarion_alchemy_finished is false and $astarion_brick_finished is true and $astarion_inventory contains 'water' and $ochre_state is "dead")[(set: $astarion_working_on to "alchemy")]
(elseif: $astarion_sarcophagus_work is true and $sarcophagus_open is false)[(set: $astarion_working_on to "sarcophagus")(set: $asked_list to it+"open-sarcophagus")]
(elseif: $astarion_brick_finished is false and $astarion_inventory contains 'knife')[(set: $astarion_working_on to "brick")]
]
(set: $astarion_play_count to it+1)
(set: $astarion_sarcophagus_tool to "")
(if: $event_interrupts_work is false and $cold_astarion_state is not "freezing" and $astarion_activity is "empty")[
(if: $astarion_working_on is "sarcophagus")[
(if: $astarion_inventory contains 'toolkit')[(set: $astarion_sarcophagus_tool to "toolkit")]
(elseif: $astarion_inventory contains 'pliers')[(set: $astarion_sarcophagus_tool to "handle of the pliers")]
(elseif: $astarion_inventory contains 'knife')[(set: $astarion_sarcophagus_tool to "edge of a knife")]
(if: $cold_astarion_state is "cold")[(set: $astarion_activity to "sarcophagus cold")(set: $sarcophagus_crest_work to it+6)]
(elseif: $astarion_sarcophagus_tool is "toolkit")[(set: $astarion_activity to "sarcophagus tool")(set: $sarcophagus_crest_work to it+20)]
(elseif: $astarion_sarcophagus_tool is not "" and $astarion_hands is "healed")[(set: $astarion_activity to "sarcophagus tool")(set: $sarcophagus_crest_work to it+15)]
(elseif: $astarion_sarcophagus_tool is not "")[(set: $astarion_activity to "sarcophagus tool hurt")(set: $sarcophagus_crest_work to it+10)]
(elseif: $astarion_hands is "healed")[(set: $astarion_activity to "sarcophagus")(set: $sarcophagus_crest_work to it+6)]
(else:)[(set: $astarion_activity to "sarcophagus hurt")(set: $sarcophagus_crest_work to it+2)]
(set: $astarion_day_activity to "sarcophagus")
(set: $astarion_location to "sarcophagus")
]
(elseif: $astarion_working_on is "brick")[
(if: $cold_astarion_state is "cold")[(set: $astarion_activity to "brick cold")(set: $astarion_brick_work to it+10)]
(elseif: $astarion_hands is "healed")[(set: $astarion_activity to "brick")(set: $astarion_brick_work to it+15)]
(else:)[(set: $astarion_activity to "brick hurt")(set: $astarion_brick_work to it+10)]
(set: $astarion_day_activity to "brick")
(set: $astarion_location to "niches")
]
(elseif: $astarion_working_on is "alchemy")[
(set: $astarion_activity to "alchemy")
(set: $astarion_alchemy_work to it+10)
(set: $astarion_day_activity to "alchemy")
(set: $astarion_location to "sarcophagus")
]
(if: $sarcophagus_crest_work > 49 and $sarcophagus_open is false)[
(set: $astarion_activity to "sarcophagus open")
(set: $sarcophagus_open to true)
(set: $objects_taken to it + (a: 'ring'))(set: $astarion_inventory to it + (a: 'ring'))
(if: not ($objects_taken contains "shroud"))[
(set: $objects_taken to it + (a: 'shroud'))
(set: $astarion_inventory to it + (a: 'shroud'))
(if: $cold_astarion_state is "cold")[(set: $cold_astarion_state to "blanket")]
]
(set: $astarion_sarcophagus_work to false)
(set: $astarion_working_on to "")
(set: $astarion_day_activity to "examine ring")
<script>updateEmotion("happy",10);</script>
]
(elseif: $astarion_brick_work > 24 and $astarion_brick_finished is false)[
(set: $astarion_activity to "brick open")
(set: $astarion_brick_finished to true)
(set: $objects_taken to it + (a: 'water'))(set: $astarion_inventory to it + (a: 'water'))
(set: $astarion_cleanliness to "clean")
(set: $astarion_working_on to "")
(set: $astarion_day_activity to "empty")
<script>updateEmotion("calm",10);</script>
<script>updateEmotion("happy",5);</script>
]
(elseif: $astarion_alchemy_work > 24 and $astarion_alchemy_finished is false)[
(set: $astarion_activity to "alchemy done")
(set: $astarion_alchemy_finished to true)
(set: $objects_taken to it + (a: 'mushrooms'))
(set: $astarion_inventory to it - (a: 'water'))
(set: $astarion_inventory to it + (a: 'empty carafe'))
(set: $astarion_working_on to "")
(set: $astarion_day_activity to "empty")
<script>updateEmotion("calm",10);</script>
<script>updateEmotion("happy",5);</script>
(set: $astarion_activity to "alchemy done drink")
(set: $astarion_hands to "healed")
(set: $activity_health_gain to 6)
]
(else:)[
(set: $play_array to (a: ))
(if: $astarion_inventory contains 'ring')[(set: $play_array to it + (a: 'ring'))(set: $play_array to it + (a: 'ring'))]
(elseif: $astarion_inventory contains 'shroud' and $cold_astarion_state is not "blanket")[(set: $play_array to it + (a: 'shroud'))]
(elseif: $astarion_inventory contains 'clive')[(set: $play_array to it + (a: 'clive'))(set: $play_array to it + (a: 'clive'))(set: $play_array to it + (a: 'clive'))]
(elseif: $astarion_inventory contains 'knife')[(set: $play_array to it + (a: 'knife'))]
(set: $play_countdown to 8-$play_array's length)
(if: $play_countdown < 1)[(set: $play_countdown to 1)]
(if: $astarion_play_count > $play_countdown and $play_array's length > 0)[
(set: $astarion_play_activity to $play_array's ((random: 1, $play_array's length)))
(set: $astarion_play_count to 0)
<script>updateEmotion("calm",5);</script><script>updateEmotion("happy",3);</script>
]
]
]
}Time passes.
(if: $player_hurt > 0)[<span class='energy'>//Recovered Some Energy//</span>
You are hurt, and still bleeding.](else:)[<span class='energy'>//Recovered All Energy//</span>](if: $player_inventory contains 'clive')[
Holding the teddy bear gives you more energy.](if: $blood_intensity > 1)[
The room smells intensely of blood.](elseif: $blood_intensity > 0)[
The room smells of blood.](if: $active_event is "teeth found vampire")[
The nightmare finds something to eat.]
(if: $health_change < 0)[<span class='health'>//Astarion Lost (print: (0 - $health_change)) Health//</span>](elseif: $health_change > 0)[<span class='emph'>//Astarion Gained $health_change Health//</span>]
|next>[Continue]{
}](elseif: $sequence is 1)[{
}<span class="day-text">Day $day</span>
(if: $cold_state is "ending" and $active_event is not "knock knock")[It's getting warmer. The cold is ending.
](if: $active_event is "blood appears")[Astarion is pacing restlessly around the tomb, searching for something.
|bloodSequence>[He finds it.]
](elseif: $active_event is "finds amber")[It's cold in the tomb. Which makes it extremely noticeable that something warm has appeared.
Astarion finds a red crystal, lambent from within and radiating warmth, which certainly wasn't there before.
](elseif: $active_event is "finds potion")[Astarion finds a small, red healing potion.
(set: $health_change to 10)(display: "update health")(set: $astarion_hands to "healed")
](elseif: $active_event is "death by freezing")[It's cold in the tomb.
Cold doesn't kill vampires. But in this specific circumstance, misery does.<script>addAchieve("Killing Cold");</script>
(set: $health_change to (0-$health))(display: "update health")
](elseif: $active_event is "cold begins")[It's getting colder in the tomb.(if: $astarion_inventory contains 'shroud')[
Astarion responds to this situation by immediately wrapping himself up in the burial shroud, using it like a blanket.]
](elseif: $cold_astarion_state is "freezing")[It's cold in the tomb. Astarion is freezing.
](elseif: $cold_state is "increased" and $event_forced is false)[It's very cold in the tomb(if: $cold_astarion_state is "blanket")[. Astarion is wrapped in a shroud, but is still starting to shiver.](elseif: $cold_astarion_state is "amber")[. The red crystal's warmth is barely keeping it at bay.](else:)[.]
](elseif: $cold_state is "active" and $event_forced is false)[It's cold in the tomb(if: $cold_astarion_state is "blanket")[, but Astarion is wrapped in a shroud and doesn't seem to mind.](elseif: $cold_astarion_state is "amber")[, but there is a red crystal that glows with warmth.](else:)[.]
](if: $active_event is "ochre leaves")[(if: $sight > 1)[The ooze follows the trail of ash through the crease of the door and out into the hallway. It does not return.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
](if: $active_event is "ochre leaves godey")[(if: $sight > 1)[The ooze follows the trail of ash through the crease of the door and out into the hallway.
As it does, you hear a noise from the hall. A sound like bones clattering on metal.
Then you hear sounds of violence, squelching, and cursing, like a skeleton just got badly burned by acid.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
](if: $active_event is "ochre arrives")[(if: $sight > 2)[A small, pale yellow creature oozes into the tomb.
$astarion Oh, gods damn it.
He moves to deal with it.](else:)[Something small, but unpleasant oozes into the tomb.
Astarion mutters something disgruntled and moves to deal with it.]
](if: $active_event is "sigh arrives")[A nightmare floats into the room.<script>changeBackground("columnsTeethFrame");</script>
It smiles at you.
](if: $active_event is "mouse")[(if: $sight > 2)[You hear a soft, skittering from near the $mouse_location. There is a mouse in the tomb.(set: $mouse_seen to true)](elseif: $sight > 1)[You hear a soft, skittering noise.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
](if: $active_event is "teeth")[A nightmare floats into the room.(set: $teeth_location to $astarion_location)<script>changeBackground("columnsTeethFrame");</script>
](elseif: $active_event is "teeth leave fed")[The nightmare finishes chewing on the pieces of you it ripped off. Then it floats away, satisfied.(set: $active_event to "empty")<script>changeBackground("columnsFrame");</script>
](elseif: $active_event is "teeth leave")[The nightmare searches for a while more, but finds nothing. Eventually it floats away.(set: $active_event to "empty")<script>changeBackground("columnsFrame");</script>
](elseif: $active_event is "teeth found vampire")[When it is finished, the nightmare floats away.(set: $active_event to "empty")<script>changeBackground("columnsFrame");</script>
](if: $godey_alert is "arriving" and $active_event is not "knock knock")[(if: $sight > 1)[You hear a noise from the hall. A sound like bones clattering on metal.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
](if: $active_event is "astarion breakdown")[Astarion is clawing at the door.
|breakdown>[Continue]
](elseif: $active_event is "message")[There's something happening to the door.
|message>[Go look.]
](elseif: $active_event is "ghost attack" and $sight > 4)[(set: $sequence to 0)(go-to: "Vengeful Ghost")
](elseif: $active_event is "ghost attack")[(set: $sequence to 2)(go-to: "Vengeful Ghost")
](elseif: $active_event is "knock knock")[$astarion Wake up.
$astarion Get up.
$astarion I've found something.
|knockKnock>[Continue]{
}](elseif: $active_event contains "astarion")[Astarion is looking for you.
](else:)[(if: $astarion_activity is not "empty" or $astarion_play_activity is not "empty")[
(if: $sight > 1)[You're faintly aware that Astarion is doing things while you rest.
(if: $astarion_activity is not "empty")[(if: $astarion_activity is "sarcophagus cold")[He works on the sarcophagus crest. It's very slow because of the cold.
](elseif: $astarion_activity is "sarcophagus")[He works on the sarcophagus crest. He's not making much progress without tools.
](elseif: $astarion_activity is "sarcophagus hurt")[He works on the sarcophagus crest. He's not making much progress without tools. He keeps having to stop to rest his hands.
](elseif: $astarion_activity is "sarcophagus tool")[He works on the sarcophagus crest. He's using the $astarion_sarcophagus_tool to try and work around the edge of the broken button.
](elseif: $astarion_activity is "sarcophagus tool hurt")[He works on the sarcophagus crest. He's using the $astarion_sarcophagus_tool to try and work around the edge of the broken button. He keeps having to stop to rest his hands.
](elseif: $astarion_activity is "sarcophagus open")[He works on the sarcophagus crest.
Midway through the 'night', he makes a happy noise and you hear a sound like sliding stone.<script>addAchieve("Grave Robbing");</script>
](elseif: $astarion_activity is "murder ochre knife")[He murders the ooze extremely effectively with his new knife.
](elseif: $astarion_activity is "murder ochre shard")[He kills the ooze with a sharpened bit of pottery.(if: $activity_health_loss > 0)[
He is slightly hurt while doing it.
<span class='health'>//Astarion Lost (print: $activity_health_loss) Health//</span>](else:)[
He manages to do it cleanly, and without being hurt at all.]](elseif: $astarion_activity is "brick")[He's using a knife to dig a brick out of the wall.
](elseif: $astarion_activity is "brick cold")[He's using a knife to dig a brick out of the wall. It's very slow because of the cold.
](elseif: $astarion_activity is "brick hurt")[He's using a knife to dig a brick out of the wall. He keeps having to stop to rest his hands.
](elseif: $astarion_activity is "brick open")[He's using a knife to dig a brick out of the wall.
Midway through the 'night' you hear the thunk of a brick hitting the floor.
](elseif: $astarion_activity is "alchemy")[(if: $astarion_alchemy_work < 15)[Astarion has cleaned off an engraved indent on the sarcophagus and filled it with water. He's using shards of pottery to scrape up bits of the dead ooze and mix them into the water.
](else:)[Astarion has cleaned off an engraved indent on the sarcophagus and filled it with water and ooze. He is picking apart brown mushrooms mixing them into the water.
]](elseif: $astarion_activity is "alchemy done drink")[Astarion's mixture has turned a vibrant red. He transfers it slowly to a carafe he has, then immediately drinks it.
<span class='self'>//Astarion Gained $activity_health_gain Health//</span>
](elseif: $astarion_activity is "examine clive")[Astarion finds something new in the tomb. He's examining it.
](elseif: $astarion_activity is "examine knife")[Astarion finds something new in the tomb. He's examining it.
](elseif: $astarion_activity is "examine toolkit")[Astarion finds something new in the tomb. He's examining it.
]
](if: $astarion_play_activity is not "empty")[He spends some time toying with his possessions. (if: $astarion_play_activity is "shroud")[He examines the embroidery on a burial shroud.
](elseif: $astarion_play_activity is "ring")[He plays with a pretty jeweled ring.
](elseif: $astarion_play_activity is "knife")[He plays a dangerous looking game with a knife.
](elseif: $astarion_play_activity is "clive")[(if: $sight > 3)[He holds a teddy bear for a little while.](else:)[But what he does is surreptitious. You're not certain what he's up to.]
]
]](else:)[You're faintly aware that Astarion is doing something while you rest. But you don't have enough Sight to know what.(if: $activity_health_loss > 0)[
<span class='health'>//Astarion Lost (print: $activity_health_loss) Health//</span>](if: $activity_health_gain > 0)[
<span class='self'>//Astarion Gained $activity_health_gain Health//</span>]
]](if: $something_appearing is not "")[(if: $sight > 3)[//(print: $something_appearing)//
](elseif: $sight > 2 and $something_appearing contains "has changed")[//(print: $something_appearing)//
](elseif: $sight > 1)[//Something has changed in the tomb.//
]]]
(if: $event_forced is false)[|nextDay>[Continue]]
{
(if: $player_hurt > 0)[(set: $player_hurt to it-2)]
(if: $player_hurt < 0)[(set: $player_hurt to 0)]
(set: $healthDisplay to false)
(if: $activity_health_loss > 0)[(set: $health_change to (0 - $activity_health_loss))(display: "update health silent")]
(if: $activity_health_gain > 0)[(set: $health_change to (0 + $activity_health_gain))(display: "update health silent")]
}](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?nextDay)[(set: $sequence to 0)(go-to: "The Tomb")]
(click: ?breakdown)[(set: $sequence to 0)(go-to: "Breakdown")]
(click: ?message)[(set: $sequence to 0)(go-to: "Message From Another World")]
(click: ?knockKnock)[(set: $sequence to 0)(go-to: "Knock Knock")]
(click: ?bloodSequence)[(set: $sequence to 3)(go-to: "Blood")]
(display: "Tomb Frame")
}(if: $sequence is 0)[You are inside of a tomb.(if: $day < 163)[
The space is twelve feet long and perhaps half as wide. A column-bracketed stone door stands at one end.
Interment niches line the walls, full of dusty remains.
There is a stone sarcophagus in the center of the room.](else:)[ Interment niches line the walls. There is a stone door. There is a sarcophagus.](if: $scroll_state is "appearing")[
<span class="text-shimmer-long">Something shimmers</span> in the air.](if: $blood_state is "present")[
There is a bottle of blood on the ground.](elseif: $blood_state is "floor" or $blood_state is "wall")[
Blood is spattered over the $blood_state. (if: $blood_intensity is 4)[It is fresh and the tomb smells like a slaughterhouse.](elseif: $blood_intensity is 3)[The tomb is filled with the smell of it.](elseif: $blood_intensity is 2)[It's clotting and smells stale.](elseif: $blood_intensity is 1)[It has dried into a brown stain.]](if: $active_event is "teeth" or $sigh_location is "tomb")[
(if: $sigh contains "Sigh:")[Sigh is here.](else:)[A nightmare is here.]]
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $active_event is "teeth")[|nightmare>[Examine the nightmare.]
](elseif: $active_event is "sigh arrives")[|nightmareConversation>[Examine the nightmare.]
](elseif: $sigh_location is "tomb")[(if: $sigh contains "Sigh:")[|sigh>[Interact with Sigh.]](else:)[|sigh>[Examine the nightmare.]]
](if: $blood_state is "present")[|examineBottle>[Examine the bottle.]
](if: $scroll_state is "appearing")[|scrollShimmer>[Examine the shimmering.]
]|tombDoor>[Examine the door.]
|tombNiches>[Examine the niches.]
|tombSarcophagus>[Examine the sarcophagus.]]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[It's a small bottle of thick, relatively durable glass.
It's full of blood.
<span id="take" class="energy-link" data-content="Take it./Touch/5/2/0"></span>
(if: $been_to_hallway is true)[<span id="move" class="energy-link" data-content="Move it to the hallway./Touch/5/3/1"></span>
]|return>[Do something else.]{
}](elseif: $sequence is 2)[No. You shouldn't carry that around.
Your survival depends on being able to interact with Astarion. He's not going to interact with you if you smell like blood he can't drink.
(if: $been_to_hallway is true)[<span id="move" class="energy-link" data-content="Move it to the hallway./Touch/5/3/1"></span>
]|return>[Do something else.]{
}](elseif: $sequence is 3)[You pick up the bottle of blood. You move across the room.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> Astarion twitches as you pass near him.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]
|next>[Continue]{
}](elseif: $sequence is 4)[You pass through the stone door and into the hallway.(if: $godey_state is "paranoid")[
You pass by the skeleton, stalking up and down the hall.]
You go as far down the hall as the dream will let you, and put the blood on the floor.
There. Now it won't be stinking up the tomb.
|goHallway>[Continue]
{
(set: $been_to_hallway to true)
<script>changeBackground("");</script>
(set: $blood_state to "hallway")
(set: $blood_intensity to 0)
}](elseif: $sequence is 5)[The <span class="text-shimmer-long">gleaming in the air</span> is bright, indistinct, and familiar.
It's not an object. You're not sure what it is.
It feels friendly.
|next>[Reach out.]
|return>[Back away.]{
}](elseif: $sequence is 6)[You touch the shimmering. It's warm. You hear the sound of fire crackling and of laughter.
For a moment, you feel like someone else is present.
<span class='energy'>//Recovered All Energy//</span>(set: $player_hurt to 0)(set: $energy to $maxEnergy)
|return>[The shimmering fades away.]{
(set: $karlach_helped to true)
<script>playAudio("aa_tap2");</script>
}](elseif: $sequence is 7)[(if: $sigh contains "Sigh:")[Sigh slinks into the tomb.](else:)[A nightmare slinks into the tomb.]
|return>[Continue]{
(set: $sigh_location to "tomb")
}](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?tombDoor)[(set: $sequence to 0)(go-to: "Tomb Door")]
(click: ?tombNiches)[(set: $sequence to 0)(go-to: "Tomb Burial Niches")]
(click: ?tombSarcophagus)[(set: $sequence to 0)(go-to: "Tomb Sarcophagus")]
(click: ?nightmare)[(set: $sequence to 0)(go-to: "Nightmare in the Tomb")]
(click: ?nightmareConversation)[(set: $sequence to 1)(go-to: "Hello Nightmare")]
(click: ?sigh)[(set: $sequence to 0)(go-to: "Sigh")]
(click: ?examineBottle)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?scrollShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Scroll of Knock")]
(set: $healthDisplay to false)
(set: $learnDisplay to false)
(set: $energyDisplay to true)
(display: "Tomb Frame")
(click: ?goHallway)[(set: $sequence to 0)(go-to: "Dungeon Hallway")]
}(if: $sequence is 0)[(if: $day < 163)[The stone door is almost as large as the wall. Decorative columns flank it.
It has no visible handle or latch.](else:)[You are near a huge stone door with no visible handle or latch.](if: $message_state is "carved")[ Rough words have been carved into the rock.](if: $astarion_location is "watching door")[
Astarion is sitting in front of the door, looking at the message.](elseif: $astarion_location is "door")[
Astarion is sitting behind one of the columns.](if: $ochre_state is "present")[
A yellowish blob of ooze sits in the corner, busily digesting a mound of ash and bone chips.](if: $ochre_state is "dead")[
There's a yellow smear on the ground.](if: $potion_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> behind one of the columns.](elseif: $potion_state is "present" and not ($objects_taken contains "potion"))[
A small healing potion is tucked behind one of the columns.](if: $toolkit_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> behind one of the columns.](elseif: $toolkit_state is "present" and not ($objects_taken contains "toolkit"))[
A leather toolkit is tucked behind one of the columns.](if: $amber_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> behind one of the columns.](elseif: $amber_state is "present" and not ($objects_taken contains "amber"))[
A lump of red crystal is hidden behind one of the columns, presence betrayed by its soft, warm glow.]
(if: $ochre_state is "present")[|ooze>[Examine ooze.]
](if: $potion_state is "appearing" and $sight > 2)[|potionShimmer>[Examine the shimmering behind the column.]
](elseif: $potion_state is "present" and not ($objects_taken contains "potion"))[|potionExamine>[Examine the potion.]
](if: $toolkit_state is "appearing" and $sight > 2)[|toolkitShimmer>[Examine the shimmering behind the column.]
](elseif: $toolkit_state is "present" and not ($objects_taken contains "toolkit"))[|toolkitExamine>[Examine the toolkit.]
](if: $amber_state is "appearing" and $sight > 2)[|amberShimmer>[Examine the shimmering behind the column.]
](elseif: $amber_state is "present" and not ($objects_taken contains "amber"))[|amberExamine>[Examine the amber.]
](if: $astarion_location is "door" or $astarion_location is "watching door")[|findAstarion>[Look at Astarion.]
]|next>[Walk through the door.]
|skip2>[Examine the door.]
(if: $message_state is "carved")[|read>[Read the words.]
]|returnTomb>[Look elsewhere.]{
(set: $healthDisplay to false)
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[(if: $been_to_hallway is true)[(set: $sequence to 0)(go-to: "Dungeon Hallway")
](elseif: $touch > 1)[You try to walk through the door. You should be able to. You're almost a ghost. Ghosts can do things like this.
It's difficult. The stone feels solid, and you feel like nothing. There's a moment where it feels like you're dissolving into the wall.
<span class="softEmph">`[Unlocked: Touch 2]`</span> But practicing touch has given you a sense of yourself, and you manage to push through.
You emerge into a stone hallway.
|goHallway>[Continue]
](else:)[You try to walk through the door. You should be able to. You're almost a ghost. Ghosts can do things like this.
But as your arm passes into the stone there's a terrible feeling, like you're not passing through the wall. You're dissolving into it.
You snatch your hand back. It takes a moment to re-form. It's a frightening moment.
Perhaps if you got better at interacting with things physically--this might become safe.
<span class="italicEmph">//Requires Touch: 2//</span>
|return>[Continue]
]](elseif: $sequence is 2)[You barely exist. You feel very acutely how barely you exist here.
](elseif: $sequence is 3)[It's a huge stone door. You see no hinges, handles, or locks. Perhaps they're on the other side?
Even if there were a lock to pick, you don't think you would be able push this door open. Not as a barely-present shadow. It looks so heavy, you're not sure Astarion could move it by himself.
(display: "Door Thoughts")
|return>[Continue]{
}](elseif: $sequence is 4)[A message has been etched into the stone of the door:
THERE'S A WAY OUT.
HELP INCOMING.
|return>[Continue]{
}](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?goHallway)[(set: $sequence to 0)(go-to: "Dungeon Hallway")]
(click: ?read)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?ooze)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Ochre Jelly")]
(click: ?potionShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Potion")]
(click: ?potionExamine)[(set: $sequence to 3)(set: $basePassage to $currentPassage)(go-to: "Potion")]
(click: ?toolkitShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Toolkit")]
(click: ?toolkitExamine)[(set: $sequence to 3)(set: $basePassage to $currentPassage)(go-to: "Toolkit")]
(click: ?amberShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Amber")]
(click: ?amberExamine)[(set: $sequence to 3)(set: $basePassage to $currentPassage)(go-to: "Amber")]
}(if: $sequence is 0)[(if: $day < 163)[Stone cubbyholes set into the walls. Intended to hold cremated remains. The contents have been vandalized. Vases broken and ash scattered everywhere.
Each shelf has an engraved epitaph beneath it.
<tw-link class='cyclingLink' data-cycling-texts='["In Memory.", "Beloved In Life.", "Now With The Gods.", "At Rest.", "Gone But Not Forgotten."]' onclick='clickCyclingLink(this, "In Memory.");'>In Memory.</tw-link>](else:)[You are near burial niches filled with broken urns and ash.](if: $astarion_location is "niches" and $astarion_day_activity is "brick")[
Astarion is picking away at a brick in the wall using his knife.](elseif: $astarion_location is "niches")[
Astarion is sitting leaning against the wall here.](if: $sight > 4)[
A gleaming silver rope hangs from the ceiling.](if: $active_event is "mouse" and $mouse_location is "niches")[
There is a small, gray mouse sitting under the far left niche.(set: $mouse_seen to true)](if: $astarion_brick_finished is true)[
There is a square hole in the wall where a brick one was.](if: $knife_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> in one of the niches.](elseif: $knife_state is "present" and not ($objects_taken contains "knife"))[
A knife has been stashed away in one of the niches.](if: $blood_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> in one of the niches.]
(if: $active_event is "mouse" and $mouse_location is "niches")[|mouse>[Examine mouse.]
](if: $knife_state is "appearing" and $sight > 2)[|knifeShimmer>[Examine the shimmering.]
](elseif: $knife_state is "present" and not ($objects_taken contains "knife"))[|knifeExamine>[Examine knife.]
](if: $blood_state is "appearing" and $sight > 2)[|bloodShimmer>[Examine the shimmering.]
](if: $astarion_brick_finished is true)[|brickHole>[Examine the square hole.]
](if: $astarion_day_activity is "brick" and $astarion_location is "niches")[|brickActivity>[Look at what Astarion is doing.]
](if: $sight > 4)[|cord>[Examine the silver cord.]
](if: $astarion_location is "niches")[|findAstarion>[Look at Astarion.]
]|returnTomb>[Look elsewhere.]{
(set: $healthDisplay to false)
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[The rope is a bright, silvery color. It gleams cleanly. It glows faintly.
It looks very out of place in the dark, dirty tomb.
It hangs down from the ceiling. Hangs through the ceiling. It's ghostly. Like you.
You think it belongs to you.
|next>[Climb the rope.]
|return>[Something else.]{
}](elseif: $sequence is 2)[You are quite certain that if you leave, you will not be able to come back.
But leaving would be a very reasonable thing to do.
This place is awful. You don't have to stay here. You may even find a better way to help, from the outside.
|next>[Climb the rope.]
<span class="explain">This will end the game.</span>
|return>[Do something else.]{
}](elseif: $sequence is 3)[You don't even have to climb it.
As soon as you grasp the rope it's pulling you up. An effortless ascent.
Rising. Out of the room. Out of the dream.
|forestEnd>[Continue]{
<script>addAchieve("This Is All A Bit Much");</script>
}](elseif: $sequence is 4)[Astarion is chipping away at the mortar around a stone brick in the wall.
(if: not ($asked_list contains "brick-project"))[<span id="askBrick" class="energy-link" data-content="Speak: Brick?/Speech/2/5"></span>
](if: not ($asked_list contains "brick-felt"))[<span id="touchBrick" class="energy-link" data-content="Feel behind the brick./Touch/2/6"></span>
](if: $touch < 3)[|gray4>[Try to help.] (click: ?gray4)[//Requires Touch 3//]](elseif: $energy > 5)[|helpFive>[Try to help. <span class="energy">5</span>]](else:)[|helpAll>[Try to help. <span class="energy">$energy</span>]]
|return>[Do something else.]
](elseif: $sequence is 5)[$astarion There's a hollow space behind this brick.
$astarion I found it ages ago, but I haven't had something I could use to work it free.
$astarion We're going to find out what's inside.
|brickActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"brick-project")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 6)[You push your hand through the wall where Astarion is working.
You can tell that there's an open space behind the brick and something inside. A few objects.
It's hard to discern what they are through your intermittent touch, and you can't interact with them blind.
|brickActivity>[Continue]{
(set: $asked_list to it+"brick-felt")
}](elseif: $sequence is 7)[There is a square gap in the wall where a brick used to be.
(if: $objects_taken contains 'mushrooms')[Inside, you see a note which reads:](else:)[Inside, you see a cluster of brown mushrooms growing out of the very rotten remains of an apple and a piece of bread.
There is also a note which reads:]
<i>Garvin--
When you find this, take a break and eat and drink. You work too hard and we're almost done with construction here.
- Greyforge</i>
|return>[Continue]{
}](elseif: $sequence is 8)[You clear away the chipped mortar from the seam of the brick.
Astarion pauses to let you do this, then starts again with a clearer line of work.
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $touch < 3)[|gray4>[Try to help.] (click: ?gray4)[//Requires Touch 3//]](elseif: $energy > 5)[|helpFive>[Try to help. <span class="energy">5</span>]](else:)[|helpAll>[Try to help. <span class="energy">$energy</span>]]
|return>[Do something else.]]{
(set: $astarion_brick_work to it+2)
(set: $vampire_enrichment_score to it+2)
(set: $astarion_interacted to true)
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?mouse)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Mouse")]
(click: ?cord)[(set: $sequence to 1)(set: $basePassage to $currentPassage)(go-to: $currentPassage)]
(click: ?knifeShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Knife")]
(click: ?knifeExamine)[(set: $sequence to 3)(set: $basePassage to $currentPassage)(go-to: "Knife")]
(click: ?bloodShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Blood")]
(click: ?brickActivity)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?brickHole)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?helpFive)[
(set: $astarion_brick_work to it+5)
(set: $energy_change to -5)
(display: "update energy silent")
(set: $sequence to 8)
(go-to: $currentPassage)]
(click: ?helpAll)[
(set: $astarion_brick_work to it+$energy)
(set: $energy_change to (0-$energy))
(display: "update energy silent")
(set: $sequence to 8)
(go-to: $currentPassage)]
}(if: $sequence is 0)[(if: $day < 163)[The stone sarcophagus in the center of the room is beautifully carved, though chipped in places.
A faded crest at one end implies that a noble is interred here.](else:)[The stone sarcophagus in the center of the room has a crest on one side.]
(if: $sarcophagus_open is true and $astarion_location is "atop sarcophagus")[The lid is open, but has been closed enough that Astarion can perch on top of it.](elseif: $sarcophagus_open is true)[The lid is open.](else:)[It's sealed shut.] (if: $astarion_location is "sarcophagus" and $astarion_day_activity is "alchemy")[Astarion is doing some strange alchemy using one of the engraved indents on the lid.](elseif: $astarion_location is "sarcophagus" and $astarion_day_activity is "sarcophagus")[Astarion is working on opening the sarcophagus.](elseif: $astarion_location is "atop sarcophagus")[Astarion is sitting on top of it.](elseif: $astarion_location contains "sarcophagus")[Astarion is leaning against it.](if: $clive_state is "appearing" and $sight > 2)[
<span class="text-shimmer-long">Something shimmers</span> on the ground near the sarcophagus.](elseif: $clive_state is "present" and not ($objects_taken contains "clive"))[
A teddy bear is sitting on the floor near the sarcophagus.](if: $active_event is "mouse" and $mouse_location is "sarcophagus")[
There is a small, gray mouse on the floor.(set: $mouse_seen to true)]
(if: $clive_state is "appearing" and $sight > 2)[|cliveShimmer>[Examine the shimmering.]
](elseif: $clive_state is "present" and not ($objects_taken contains "clive"))[|cliveExamine>[Examine teddy bear.]
](if: $astarion_day_activity is "alchemy" and $astarion_location is "sarcophagus")[|alchemyActivity>[Look at what Astarion is doing.]
](if: $astarion_day_activity is "sarcophagus" and $astarion_location is "sarcophagus")[|sarcophagusActivity>[Look at what Astarion is doing.]
](if: $astarion_location contains "sarcophagus")[|findAstarion>[Look at Astarion.]
](if: $sarcophagus_open is true)[|lookIn>[Look inside the sarcophagus.]
](else:)[|next>[Examine the crest.]
|skip2>[Enter sarcophagus.]
]|returnTomb>[Look elsewhere.]{
(set: $healthDisplay to false)
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
(display: "Tomb Frame")
}](elseif: $sequence is 1)[The crest is a complicated filigree shield.
Some of the sections stand out a little more than the others. They look a little like buttons.
<span id="press" class="energy-link" data-content="Press the buttons./Touch/3/+1/3"></span>
|return>[Continue]{
(if: $cold_state is "increased")[
<script>changeBackground("crestFrameVeryCold");</script>
](elseif: $cold_state is "ending" or $cold_state is "active")[
<script>changeBackground("crestFrameCold");</script>
](else:)[
<script>changeBackground("crestFrame");</script>
]
}](elseif: $sequence is 2)[You push on parts of the crest. The sections that look different pop up and sink down like buttons.
But one of the buttons is broken. You can't press it in.
Even if they all worked, you don't know the combination. And trying all the different ones is a task beyond your limited ability to touch things.
|return>[Continue]{
}](elseif: $sequence is 3)[(if: $been_inside_sarcophagus is true)[(set: $sequence to 4)(go-to: $currentPassage)
](elseif: $touch > 1)[You try to pass through the sarcophagus lid. You should be able to. You're almost a ghost. Ghosts can do things like this.
It's difficult. The stone feels solid, and you feel like nothing. There's a moment where it feels like you're dissolving into the stone.
<span class="softEmph">`[Unlocked: Touch 2]`</span> But practicing touch has given you a sense of yourself, and you manage to push through.
|next>[Continue]
](else:)[You try to pass through the sarcophagus lid. You should be able to. You're almost a ghost. Ghosts can do things like this.
But as your arm passes into the stone there's a terrible feeling, like you're not passing through the wall. You're dissolving into the stone.
You snatch your hand back. It takes a moment to re-form. It's a frightening moment.
Perhaps if you got better at interacting with things physically--this might become safe.
<span class="italicEmph">//Requires Touch: 2//</span>
|return>[Continue]
]](elseif: $sequence is 4)[You are inside the sarcophagus.
(if: $objects_taken contains "shroud")[There is a corpse so old it is mummified.
It's wearing a gleaming perfect ruby ring that is obviously magical.](else:)[There is a body in here. It is covered in a burial shroud.]
(if: $objects_taken contains "shroud")[<span id="ring" class="energy-link" data-content="Take the ring./Touch/5/6/1"></span>
(if: $class is "wizard")[<span id="idRing" class="energy-link" data-content="[WIZARD] Identify the ring./Touch/0/6/0"></span>
]](else:)[<span id="shroud" class="energy-link" data-content="Take the shroud./Touch/5/5/1"></span>
]|return>[Leave the sarcophagus.]{
<script>changeBackground("coffinFrame");</script>
(set: $been_inside_sarcophagus to true)
}](elseif: $sequence is 5)[You pick up the burial shroud, uncovering an old, desiccated corpse.
<span class="emph">//Took shroud.//</span>(set: $player_inventory to it + (a: 'shroud'))(set: $objects_taken to it + (a: 'shroud'))
On one of the corpse's fingers, you see a gleaming ruby ring that is obviously magical.
|returnInside>[Continue]{
}](elseif: $sequence is 6)[(if: $just_said is "ring")[You try to take the magic ring. But there's a brightness to it. A gleaming enchantment.
And you are a shadow. As you touch the ring it glows. Your fingers vanish.
Fortunately, when you snatch your hand away, your fingers come back.
|returnInside>[Continue]{
}](elseif: $just_said is "idRing")[Examining the ring, you note that the embedded ruby contains hints of color other than red.
Based on that, you concluded that this is a //Ring of Colour Spray//. It can be used to cast a minor illusion spell that will blind enemies.
|returnInside>[Continue]{
<script>addAchieve("Roll Arcana");</script>
}]](elseif: $sequence is 7)[There is a corpse inside the sarcophagus.
It is so old it's mummified.
It has been relieved of all of its valuables.
|return>[Continue]{
}](elseif: $sequence is 8)[The lid of the sarcophagus is pitted with decorative, engraved niches.
Astarion has cleaned out a bowl-sized one and filled it with water. He's using it to mix things together.
(if: not ($asked_list contains "alchemy-project"))[<span id="askAlchemy" class="energy-link" data-content="Speak: Mix?/Speech/2/9"></span>
](if: $touch < 3 and $speech < 3)[|gray4>[Try to help.] (click: ?gray4)[//Requires Touch 3 or Speech 3//]](elseif: $energy > 5)[|helpFiveAlchemy>[Try to help. <span class="energy">5</span>]](else:)[|helpAllAlchemy>[Try to help. <span class="energy">$energy</span>]]
|return>[Do something else.]{
}](elseif: $sequence is 9)[$astarion Don't you know basic alchemy?
$astarion The mushrooms I found growing in the rot behind that brick are called Rogue's Morsel.
$astarion And that ooze has the kind of slime you can make a suspension out of.
$astarion You can combine them to make a potion of healing.
$astarion It's easier with tools, but we make do.
|alchemyActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"alchemy-project")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 10)[Astarion bats your spectral hand away.
$astarion Must you put your hands on everything?
$astarion Don't meddle. I'm managing this.
|alchemyActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"alchemy-touch")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 11)[(if: $touch < 3)[You help by giving some alchemical advice in stunted sentences.
Astarion does not take the constructive criticism gracefully, but he does apply it.
](elseif: $astarion_alchemy_work < 15)[You help mix the bits of ooze Astarion collects into the water.
](else:)[You help pick apart the brown mushrooms that Astarion brings over from the niches.
]
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $touch < 3 and $speech < 3)[|gray4>[Help more.] (click: ?gray4)[//Requires Touch 3 or Speech 3//]](elseif: $energy > 5)[|helpFiveAlchemy>[Help more. <span class="energy">5</span>]](else:)[|helpAllAlchemy>[Help more. <span class="energy">$energy</span>]]
|return>[Do something else.]]{
(set: $vampire_enrichment_score to it+4)
(set: $astarion_interacted to true)
}](elseif: $sequence is 12)[
](elseif: $sequence is 13)[Astarion is trying to open the sarcophagus.
He's by the crest on the side, experimenting with button combinations and trying to work around the broken one.
(if: not ($asked_list contains "sarcophagus-project"))[<span id="askSarcophagus" class="energy-link" data-content="Speak: Open?/Speech/2/15"></span>
](if: $touch < 3 and $speech < 3)[|gray4>[Try to help.] (click: ?gray4)[//Requires Touch 3 or Speech 3//]](elseif: $energy > 5)[|helpFive>[Try to help. <span class="energy">5</span>]](else:)[|helpAll>[Try to help. <span class="energy">$energy</span>]]
|return>[Do something else.]{
}](elseif: $sequence is 14)[{
(set: $rand to (random: 1, 4))
(if: $touch < 3 and $rand % 2)[(set: $rand to it-1)]
}(if: $rand is 1)[You examine the mechanisms from angles Astarion cannot reach, on account of being physical, and try to describe what you've seen to Astarion in stunted sentences.
](elseif: $rand is 2)[Astarion has you hold the broken button depressed for as long as you can while he works around it.
](elseif: $rand is 3)[You discuss the structure of the part of the sarcophagus Astarion is currently working on.
(if: $class is "rogue")[You have a few helpful suggestions. This is your profession too, after all.](else:)[You don't have much to contribute since this isn't your profession, but Astarion seems to find thinking out loud helpful.]
](elseif: $rand is 4)[Astarion describes how he thinks the mechanisms behind the buttons should work, and has you try to move through the stone and press them in different ways.
]
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $touch < 3 and $speech < 3)[|gray4>[Help more.] (click: ?gray4)[//Requires Touch 3 or Speech 3//]](elseif: $energy > 5)[|helpFive>[Help more. <span class="energy">5</span>]](else:)[|helpAll>[Help more. <span class="energy">$energy</span>]]
|return>[Do something else.]]{
(set: $vampire_enrichment_score to it+4)
(set: $astarion_interacted to true)
}](elseif: $sequence is 15)[(if: $astarion_asked_about_work is true)[$astarion Don't backseat lockpick. Be useful or do something else.
](elseif: $sarcophagus_crest_work < 13)[$astarion Don't pester me about it, I've barely started.
](elseif: $sarcophagus_crest_work < 26)[$astarion Far from it. This wouldn't be easy even if I were working with something functional.
](elseif: $sarcophagus_crest_work < 39)[$astarion It's coming along.
](else:)[$astarion Almost there, I think.
]
(if: $touch < 3 and $speech < 3)[|gray4>[Try to help.] (click: ?gray4)[//Requires Touch 3 or Speech 3//]](elseif: $energy > 5)[|helpFive>[Try to help. <span class="energy">5</span>]](else:)[|helpAll>[Try to help. <span class="energy">$energy</span>]]
|return>[Do something else.]{
(set: $astarion_asked_about_work to true)
(set: $astarion_interacted to true)
}](elseif: $sequence is 16)[
]{
(click: ?returnInside)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?lookIn)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?mouse)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Mouse")]
(click: ?cliveShimmer)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(go-to: "Clive")]
(click: ?cliveExamine)[(set: $sequence to 3)(set: $basePassage to $currentPassage)(go-to: "Clive")]
(click: ?alchemyActivity)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?sarcophagusActivity)[(set: $sequence to 13)(go-to: $currentPassage)]
(click: ?helpFive)[
(set: $sarcophagus_crest_work to it+5)
(if: $class is "rogue")[(set: $sarcophagus_crest_work to it+2)]
(set: $energy_change to -5)
(display: "update energy silent")
(set: $sequence to 14)
(go-to: $currentPassage)]
(click: ?helpAll)[
(set: $sarcophagus_crest_work to it+$energy)
(if: $class is "rogue")[(set: $sarcophagus_crest_work to it+2)]
(set: $energy_change to (0-$energy))
(display: "update energy silent")
(set: $sequence to 14)
(go-to: $currentPassage)]
(click: ?helpFiveAlchemy)[
(set: $astarion_alchemy_work to it+5)
(set: $energy_change to -5)
(display: "update energy silent")
(set: $sequence to 11)
(go-to: $currentPassage)]
(click: ?helpAllAlchemy)[
(set: $astarion_alchemy_work to it+$energy)
(set: $energy_change to (0-$energy))
(display: "update energy silent")
(set: $sequence to 11)
(go-to: $currentPassage)]
}(if: $sequence is 0)[(display: "Astarion Description")
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $no_chance_to_talk is true and $day is 172)[(if: $energy is < 3)[Tell Astarion that wasn't you. //Not enough Energy.//](elseif: $speech is < 2)[Tell Astarion that wasn't you. //You can't speak.//](else:)[|ghostWasntMe>[Tell Astarion that wasn't you.]]
<span class="explain">//You must have at least 3 Energy to start this interaction.//</span>
](if: $active_event is "astarion godey response")[|godeyTantrumResponse>[Interact with Astarion.]
](elseif: $active_event contains "astarion")[(if: $energy is < 5)[Interact with Astarion. //Not enough Energy.//](else:)[|startInteraction>[Interact with Astarion.]]
<span class="explain">//You must have at least 5 Energy to start this interaction.//</span>
](elseif: $astarion_refuse_interaction is true)[//Astarion doesn't want to interact with you.//
](elseif: $cold_astarion_state is "freezing")[//Astarion isn't responsive.//(if: $player_inventory contains 'shroud')[
<span id="shroud" class="energy-link" data-content="Give him the burial shroud./Touch/0/7/0"></span>](if: $player_inventory contains 'amber')[
<span id="amber" class="energy-link" data-content="Give him the fire amber./Touch/0/8/0"></span>]
](elseif: $astarion_hiding is true)[//Rogues can't talk while they're hiding.//
](elseif: $astarion_goodbye is true)[//You've said goodbye.//
](else:)[(if: $active_event is "teeth" and $astarion_nightmare_told is "")[(if: $energy is < 5)[Warn Astarion about nightmare. //Not enough Energy.//](else:)[|startInteraction>[Warn Astarion about nightmare.]]
<span class="explain">//You must have at least 5 Energy to start this interaction.//</span>
](elseif: $active_event is "mouse" and $mouse_seen is true)[(if: $speech > 1)[|goMouse>[Speak: Mouse.]](else:)[|gray4>[Speak: Mouse.] (click: ?gray4)[//Requires Speech 2.//]]
](elseif: $ochre_state is "present")[|goOoze>[Talk about the ooze.]
](elseif: $active_event is "cold begins" and not ($asked_list contains "ask-cold"))[<span id="askCold" class="energy-link" data-content="Speak: Cold?/Speech/2/9/1"></span>
](elseif: $cold_state is "increased" and not ($asked_list contains "ask-cold-increased"))[<span id="askColdIncreased" class="energy-link" data-content="Speak: Colder./Speech/2/16/1"></span>
](elseif: $cold_state is "ending" and not ($asked_list contains "cold-ending"))[(if: $active_event is not "cold begins")[<span id="coldEnding" class="energy-link" data-content="Speak: Cold stopping./Speech/3/10/1"></span>
]](if: $astarion_day_activity is "brick" and $astarion_location is "niches")[|brickActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "alchemy" and $astarion_location is "sarcophagus")[|alchemyActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "sarcophagus" and $astarion_location is "sarcophagus")[|sarcophagusActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "examine clive")[|cliveActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "examine knife")[|knifeActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "examine toolkit")[|toolkitActivity>[Look at what he's doing.]
](elseif: $astarion_day_activity is "examine ring" and not ($asked_list contains "ask-ring"))[<span id="askRing" class="energy-link" data-content="Speak: Ring?/Speech/2/15/1"></span>
](if: $astarion_mood is "frightened" and $class is "ranger")[<span id="soothing" class="energy-link" data-content="[RANGER] Make soothing noises./Speech/1/5/1"></span>
](elseif: $astarion_mood is "frightened" and $class is "druid")[<span id="soothing" class="energy-link" data-content="[DRUID] Make soothing noises./Speech/1/5/1"></span>
](if: $speech > 0)[|saySomething>[Say something.]](else:)[|gray2>[Say something.] (click: ?gray2)[//Requires Speech 1. |practice>[Practice this?]//]]
(if: $touch > 0)[|touchVampire>[Touch him.]](else:)[|gray3>[Touch him.] (click: ?gray3)[//Requires Touch 1. |practice>[Practice this?]//]]
(if: $astarion_inventory's length > 0 or $player_inventory's length > 0)[|inventory>[Check his inventory.]
](if: $sight is 6)[|hiddenThings>[Examine things that should be hidden.]
]]] {
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[
](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[(if: $astarion_not_a_cat is true)[$astarion Oh, for fuck's sake.
Astarion is no longer frightened.
But he is still tense, because he's annoyed about how that keeps working on him.
|return>[Continue]{
(set: $astarion_mood to "tense")
}](else:)[You make soft, comforting noises. The kind you'd use to soothe a wild animal.
Astarion casts an irritable look in your direction.
$astarion Stop that. I'm not a cat.
He does seem calmer, though.
|return>[Continue]{
<script>addAchieve("Psspsspss");</script>
(set: $astarion_mood to "calm")
(set: $astarion_not_a_cat to true)
}]](elseif: $sequence is 6)[<span class="softEmph">`[Unlocked: Sight 6]`</span>
You're not sure what you're looking at, but you think it's imporant.
<span class="dim">`$day`</span> is <span class="softEmph">(print: $day)</span>
<span class="dim">`$active_event`</span> is <span class="softEmph">(print: $active_event)</span>
<span class="dim">`$health`</span> is <span class="softEmph">(print: $health)</span>
<span class="dim">`$difficulty`</span> is <span class="softEmph">(print: $difficulty)</span>
<span class="dim">`$firstPriority`</span> is <span class="softEmph">(print: $firstPriority)</span>
<span class="dim">`$secondPriority`</span> is <span class="softEmph">(print: $secondPriority)</span>
<span class="dim">`$vampire_enrichment_score`</span> is <span class="softEmph">(print: $vampire_enrichment_score)</span>
<span class="dim">`$astarion_trust`</span> is <span class="softEmph">(print: $astarion_trust)</span>
<span class="dim">`$interaction_to_trust`</span> is <span class="softEmph">(print: $interaction_to_trust)</span>
<span class="dim">`$fuck_off_count`</span> is <span class="softEmph">(print: $fuck_off_count)</span>
<span class="dim">`$fuck_off_forgiveness`</span> is <span class="softEmph">(print: $fuck_off_forgiveness)</span>
<span class="dim">`$morning_joke_count`</span> is <span class="softEmph">(print: $morning_joke_count)</span>
<span class="dim">`$story_count`</span> is <span class="softEmph">(print: $story_count)</span>
<span class="dim">`$touch_trust`</span> is <span class="softEmph">(print: $touch_trust)</span>
<span class="dim">`$successful_head_pat`</span> is <span class="softEmph">(print: $successful_head_pat)</span>
<span class="dim">`$successful_hug`</span> is <span class="softEmph">(print: $successful_hug)</span>
<span class="dim">`$astarion_interacted`</span> is <span class="softEmph">(print: $astarion_interacted)</span>
<span class="dim">`$astarion_greeted`</span> is <span class="softEmph">(print: $astarion_greeted)</span>
<span class="dim">`$astarion_howareyou`</span> is <span class="softEmph">(print: $astarion_howareyou)</span>
<span class="dim">`$astarion_location`</span> is <span class="softEmph">(print: $astarion_location)</span>
<span class="dim">`$astarion_inventory`</span> is <span class="softEmph">(print: $astarion_inventory)</span>
<span class="dim">`$what_is_player`</span> is <span class="softEmph">(print: $what_is_player)</span>
<span class="dim">`$murdered_by_cazador`</span> is <span class="softEmph">(print: $murdered_by_cazador)</span>
<span class="dim">`$sarcophagus_open`</span> is <span class="softEmph">(print: $sarcophagus_open)</span>
<span class="dim">`$teeth_hit_count`</span> is <span class="softEmph">(print: $teeth_hit_count)</span>
<span class="dim">`$hallway_spike_state`</span> is <span class="softEmph">(print: $hallway_spike_state)</span>
<span class="dim">`$godey_tantrum`</span> is <span class="softEmph">(print: $godey_tantrum)</span>
|return>[Continue]{
}](elseif: $sequence is 7)[It takes Astarion a moment to register that you're giving him something.
When he sees what it is, he immediately snatches it up and wraps it entirely around himself.
It takes a while more before the shivering subsides to the point where he can talk easily.
$astarion Thank you.
$astarion Gods. Thank you.
|return>[Continue]{
(set: $cold_astarion_state to "blanket")
<script>updateTrust(1);</script>
(set: $astarion_interacted to true)
(set: $astarion_inventory to it + (a: 'shroud'))
(set: $player_inventory to it - (a: 'shroud'))
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("calm",4);</script>
}](elseif: $sequence is 8)[(set: $sequence to 5)(set: $basePassage to $currentPassage)(go-to: "Amber")
](elseif: $sequence is 9)[$astarion Yes. It must be winter.(set: $asked_list to it+"ask-cold")
(if: $cold_astarion_state is "blanket")[$astarion Fortunately, I don't give a fuck.
He pulls the burial shroud tighter around his shoulders with an obvious sense of satisfaction.](else:)[$astarion This is going to be unpleasant. But it shouldn't be fatal.
$astarion Cold doesn't kill us. It's just absolutely miserable.]
|return>[Continue]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 10)[$astarion Yes. I noticed that.(set: $asked_list to it+"cold-ending")
$astarion Autumn is being mercifully long, I suppose.(if: $astarion_learned_dream is not 0)[
$astarion ...or perhaps it has to do with this being a dream.]
|return>[Continue]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 11)[Astarion is holding a knitted toy bear stuffed with soft fur.
He's staring at it as if it's some impossible puzzle he's trying to figure out.
(if: not ($asked_list contains "clive-what"))[<span id="what" class="energy-link" data-content="Speak: What?/Speech/2/12"></span>
](if: not ($asked_list contains "clive-what"))[<span id="fuck" class="energy-link" data-content="Speak: What the fuck?/Speech/4/12"></span>
](if: not ($asked_list contains "clive-clive"))[<span id="clive" class="energy-link" data-content="Speak: Clive./Speech/2/13"></span>
]|return>[Do something else.]{
}](elseif: $sequence is 12)[$astarion My thoughts precisely.
$astarion I found it by the sarcophagus.
$astarion This certainly wasn't here before.
$astarion Is this someone's idea of help?
|cliveActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"clive-what")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 13)[$astarion Are you naming it?
$astarion How unbearably saccharine.
(if: $class is "bard")[<span id="pun" class="energy-link" data-content="[BARD] Speak: Un-bear-ably./Speech/2/14"></span>
]|cliveActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"clive-clive")
(set: $vampire_enrichment_score to it+4)
}](elseif: $sequence is 14)[(if: $player_name is "Tav" or $player_name is "Anastavia")[$astarion Don't start with me, Spindle.
](else:)[Astarion makes a disgusted noise.
$astarion Kindly refrain from ever doing that again.
]
|cliveActivity>[Continue]{
(set: $vampire_enrichment_score to it+8)
<script>addAchieve("Wordplay");</script>
}](elseif: $sequence is 15)[$astarion I indulged in some light grave robbing while you were away.(set: $asked_list to it+"ask-ring")
$astarion Look at this pretty little thing.
He raises his hand. A small ruby ring glitters on his finger.
Then he gestures to activate it. A dazzling array of flashing, colored light springs from his hand. You find yourself briefly blinded.
$astarion Isn't it delightful? Absolutely wasted on that stiff in the coffin.
|return>[Continue]{
(set: $astarion_interacted to true)
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 16)[$astarion Yes.(set: $asked_list to it+"ask-cold-increased")
(if: $cold_astarion_state is "blanket")[He pulls the burial shroud tighter around his shoulders.](elseif: $cold_astarion_state is "amber")[He cradles the glowing crystal in his hands.](else:)[He rubs his arms, a futile motion.]
(if: $astarion_learned_dream > 0)[$astarion I don't....
$astarion I don't think I remember it getting this cold.
$astarion Last time.
](else:)[$astarion This doesn't...
$astarion This doesn't feel right.
$astarion We're underground.
$astarion It shouldn't be this cold.
]
|return>[Continue]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 17)[Astarion is holding a long knife. Its edge gleams with magic.
He's toying with it thoughtfully.
(if: not ($asked_list contains "knife-what"))[<span id="what" class="energy-link" data-content="Speak: Knife?/Speech/2/18"></span>
](if: not ($asked_list contains "knife-stab"))[<span id="stab" class="energy-link" data-content="Speak: Stab something!/Speech/3/19"></span>
]|return>[Do something else.]{
}](elseif: $sequence is 18)[$astarion Indeed. I found it in one of the internment niches.
$astarion Which I have previously searched many, many times.
$astarion A mysterious, but very pleasant surprise.
$astarion Not exactly timely, though. It would have been nice to have this yesterday, wouldn't it?
|knifeActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"knife-what")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 19)[Astarion smiles in your direction.
$astarion As soon as the opportunity presents itself, I assure you.
|knifeActivity>[Continue]{
<script>updateEmotion("happy",2);</script>
(set: $astarion_interacted to true)
(set: $asked_list to it+"knife-stab")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 20)[Astarion is holding a leather bag, full of tools.
He's going through them one by one.
(if: not ($asked_list contains "toolkit-useful"))[<span id="what" class="energy-link" data-content="Speak: Useful./Speech/2/21"></span>
](if: not ($asked_list contains "toolkit-open"))[<span id="open" class="energy-link" data-content="Speak: Open door?/Speech/3/22"></span>
]|return>[Do something else.]{
}](elseif: $sequence is 21)[$astarion Indeed. I found it tucked behind one of the columns.
$astarion They are very good hiding places.
He holds up a hook and examines it.(if: $sarcophagus_open is not true)[ He nods towards the sarcophagus.
$astarion That grave in the center of this room is about to get robbed.]
|toolkitActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"toolkit-useful")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 22)[$astarion Take another look at the door(if: $astarion_trust > 10)[, darling.](else:)[.]
$astarion Do you see a lock to pick?
$astarion No. All the hooks and prongs in the realm won't help with that stone monster.
$astarion But this feels like the sort of thing you would give someone who might soon encounter different doors, doesn't it?
|toolkitActivity>[Continue]{
(set: $astarion_interacted to true)
(set: $asked_list to it+"toolkit-open")
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[
](elseif: $sequence is 26)[
](elseif: $sequence is 27)[
]{
(click: ?inventory)[(set: $sequence to 0)(go-to: "Astarion Inventory")]
(click: ?godeyTantrumResponse)[(set: $sequence to 5)(set: $astarion_interacted to true)(set: $active_event to "empty")(go-to: "Small Chats")]
(click: ?saySomething)[(set: $sequence to 0)(go-to: "Speech")]
(click: ?touchVampire)[(set: $sequence to 0)(go-to: "Touch")]
(click: ?goMouse)[(set: $sequence to 5)(go-to: "Mouse")]
(click: ?goOoze)[(set: $sequence to 2)(set: $basePassage to $currentPassage)(go-to: "Ochre Jelly")]
(click: ?hiddenThings)[(set: $sequence to 6)(go-to: $currentPassage)]
(click: ?brickActivity)[(set: $sequence to 4)(go-to: "Tomb Burial Niches")]
(click: ?alchemyActivity)[(set: $sequence to 8)(go-to: "Tomb Sarcophagus")]
(click: ?sarcophagusActivity)[(set: $sequence to 13)(go-to: "Tomb Sarcophagus")]
(click: ?cliveActivity)[(set: $sequence to 11)(go-to: $currentPassage)]
(click: ?knifeActivity)[(set: $sequence to 17)(go-to: $currentPassage)]
(click: ?toolkitActivity)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?startInteraction)[
(set: $sequence to 0)
(if: $active_event is "astarion first questions")[(go-to: "First Questions")]
(elseif: $active_event is "astarion dont leave")[(go-to: "Don't Leave")]
(elseif: $active_event is "astarion name")[(go-to: "I Should Ask")]
(elseif: $active_event is "teeth")[(set: $sequence to 11)(go-to: "Nightmare in the Tomb")]
(elseif: $active_event is "astarion message")[(set: $sequence to 0)(go-to: "Discuss Message")]
]
(click: ?ghostWasntMe)[(set: $sequence to 12)(go-to: "After The Ghost")]
(set: $healthDisplay to true)
(set: $learnDisplay to false)
(set: $energyDisplay to true)
(display: "Tomb Frame")
}(if: $energy is 0)[(display: "rest text")
](else:)[<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1/1/1"></span>
(if: $touch_trust is 0)[<span id="touchHand" class="energy-link" data-content="Touch his hand./Touch/1/2/1/surpriseCheck"></span>](else:)[<span id="holdHand" class="energy-link" data-content="Hold his hand./Touch/1/3/2/surpriseCheck"></span>]
(if: $touch_trust > 1)[<span id="leanShoulder" class="energy-link" data-content="Lean on his shoulder./Touch/2/5/2/surpriseCheck"></span>
](elseif: $touch_trust is 1)[<span id="touchShoulder" class="energy-link" data-content="Touch his shoulder./Touch/1/4/1/surpriseCheck"></span>
](if: $touch > 3 and $touch_trust > 1)[<span id="hug" class="energy-link" data-content="Hug him./Touch/4/9/3/surpriseCheck"></span>
](if: $touch_trust > 2)[<span id="petHead" class="energy-link" data-content="Pet his head./Touch/3/8/2/surpriseCheck"></span>
](elseif: $touch_trust is 2)[<span id="touchHead" class="energy-link" data-content="Touch his head./Touch/1/7/1/surpriseCheck"></span>
](if: $class is "wizard")[|cast>[`[WIZARD]` Cast magic.]
](if: $class is "sorcerer")[|cast>[`[SORCERER]` Cast magic.]
](if: $class is "warlock")[|cast>[`[WARLOCK]` Cast magic.]
]|findAstarion>[Do something else.]]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
(click: ?cast)[(set: $sequence to 10)(go-to: $currentPassage)]
}(if: $energy is 0)[(display: "rest text")
](else:)[(if: $astarion_greeted is false and $speech > 2 and $astarion_interacted is false and $day is 161)[|greetListen>[Speak: "Hey, listen." //<span class="energy">1</span>//]
](elseif: $astarion_greeted is false and $speech > 1 and $astarion_interacted is false)[|greet>[Speak: "Hello." //<span class="energy">1</span>//]
](if: $astarion_greeted is false and $speech > 2 and $astarion_interacted is false)[|greetMorning>[Speak: "Good morning." //<span class="energy">1</span>//]
](if: $astarion_howareyou is false and $speech is 3)[|howAreYou>[Speak: "How you?" //<span class="energy">1</span>//]
](elseif: $astarion_howareyou is false and $speech > 3)[|howAreYou>[Speak: "How are you?" //<span class="energy">1</span>//]
](if: $speech > 3 and $astarion_learned_dream is 0 and not ($asked_list contains "you-are-dreaming"))[|tellDreaming>[Speak: "You are dreaming." //<span class="energy">1</span>//]
](if: $whistling is true)[|whisper>[Whistle. //<span class="energy">1</span>//]](else:)[|whisper>[Whisper. //<span class="energy">1</span>//]]
(if: $class is "bard")[|perform>[`[BARD]` Perform.]
](if: $class is "druid" and $speech > 4)[|purr>[`[DRUID]` Purr. //<span class="energy">1</span>//]
](if: $astarion_stories_unlocked is true)[|storyAsk>[Speak: "Story?" //<span class="energy">1</span>//]
](if: $astarion_will_explore is true)[|exploreAsk>[Speak: "Explore?" //<span class="energy">1</span>//]
](if: $speech > 1)[|question>[Ask a question.]
](if: $speech > 1 and $astarion_interacted is true and false)[|goodbye>[Speak: "Goodbye" //<span class="energy">1</span>//]
]|findAstarion>[Do something else.]]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
(click: ?whisper)[(set: $sequence to 1)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?perform)[(set: $sequence to 2)(set: $class to "bard")(go-to: $currentPassage)]
(click: ?purr)[(set: $sequence to 8)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?greet)[(set: $sequence to 4)(set: $astarion_greeted to true)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?greetListen)[(set: $sequence to 4)(set: $astarion_greeted to true)(set: $just_said to "hey listen")(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?greetMorning)[(set: $sequence to 5)(set: $astarion_greeted to true)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?howAreYou)[(set: $sequence to 6)(set: $astarion_howareyou to true)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?goodbye)[(set: $sequence to 7)(set: $astarion_goodbye to true)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?question)[(set: $sequence to 0)(go-to: "Speech Questions")]
(click: ?storyAsk)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(display: "reduce energy interaction")(go-to: "Speech Story")]
(click: ?exploreAsk)[(set: $sequence to 12)(set: $basePassage to $currentPassage)(display: "reduce energy interaction")(go-to: "Speech Questions")]
(click: ?tellDreaming)[(set: $sequence to 8)(set: $asked_list to it+"you-are-dreaming")(set: $basePassage to "Speech")(display: "reduce energy interaction")(go-to: "First Questions")]
}(if: $sequence is 0)[(display: "Astarion Description")
(display: "Touch Options"){
}](elseif: $sequence is 1)[You make a slight sound to mark your presence.
Astarion turns his head slightly to track it.
(display: "Touch Options"){
<script>updateEmotion("curious",4);</script>
(set: $astarion_interacted to true)
}](elseif: $sequence is 2)[You reach out and touch Astarion's hand.
(if: $astarion_mood is "frightened" or $astarion_mood is "tense" or $astarion_trust < 5)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $touch_threshold_count is 0)[Astarion twitches away from the contact.
Then he reconsiders. He puts his hand down in exactly the same spot.
](elseif: $touch_threshold_count is 1)[Astarion watches his hand where it sits on the stone.
His fingers move slightly when he feels you touch it.
](elseif: $touch_threshold_count is 2)[You have discovered that you can sustain contact for three seconds.
Then your fingers drift into nothingness, becoming insubstantial and falling through his hand.
](elseif: $touch_threshold_count is 3)[Astarion makes a quiet noise in response to the contact.
](elseif: $touch_threshold_count is 4)[$astarion This is fine.
$astarion I don't mind this.
](elseif: $touch_threshold_count is 5)[As you make contact, Astarion turns his hand so that his palm is facing up.
And it's almost like you're holding hands.(set: $touch_trust to 1)(set: $touch_threshold_count to 0)
](display: "Touch Options"){
(if: $astarion_mood is "frightened" or $astarion_mood is "tense" or $astarion_trust < 5)[](else:)[
(set: $touch_threshold_count to it+1)
(set: $vampire_enrichment_score to it+2)
<script>updateEmotion("calm",2);</script>
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 3)[You reach out and hold Astarion's hand.
(if: $astarion_mood is "frightened" or $astarion_trust < 5)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](else:)[(if: $astarion_trust > 10)[(set: $rand to (random: 1, 6))(if: $rand is 1)[Astarion sighs in response to the contact.
](elseif: $rand is 2)[Astarion tilts his head to watch the space where he thinks you are.
](elseif: $rand is 3)[$astarion This is nice.
](elseif: $rand is 4)[Astarion relaxes visibly.
](elseif: $rand is 5)[$astarion Hello you.
](else:)[Astarion's fingers move slightly, as if trying to trace the outlines of yours.
]
](elseif: $astarion_trust > 4)[(set: $rand to (random: 1, 6))(if: $rand is 1)[Astarion hums in response to the contact.
](elseif: $rand is 2)[Astarion watches the space where he thinks you are.
](elseif: $rand is 3)[$astarion This is fine.
](elseif: $rand is 4)[Astarion seems to relax slightly.
](elseif: $rand is 5)[$astarion Lonely $player_term?
](else:)[Astarion's fingers move.
]
](else:)[(set: $rand to (random: 1, 3))(if: $rand is 1)[Astarion makes a quiet sound in response to the contact.
](elseif: $rand is 2)[Astarion holds still and watches the space where he thinks you are.
](else:)[Astarion's fingers move slightly.
]
]](display: "Touch Options"){
(if: $astarion_mood is "frightened" or $astarion_trust < 5)[](else:)[
(set: $touch_threshold_count to it+1)
(if: $astarion_trust > 12)[<script>updateEmotion("calm",6);</script><script>updateEmotion("happy",2);</script>]
(else:)[<script>updateEmotion("calm",4);</script><script>updateEmotion("happy",1);</script>]
(if: not ($enrichment_list contains "hand touch"))[
(set: $enrichment_list to it+"hand touch")
(set: $vampire_enrichment_score to it+5)
]
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 4)[You reach out and touch Astarion's shoulder.
(if: $astarion_mood is "frightened" and $astarion_trust < 10)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_mood is "tense" and $astarion_trust < 5)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $touch_threshold_count > 7 or $touch_threshold_count is 0)[He turns towards you, attentive.
](elseif: $touch_threshold_count > 3)[He doesn't seem to mind that.
](else:)[Astarion tolerates the contact.
](display: "Touch Options"){
(set: $touch_threshold_count to it+1)
(if: not ($enrichment_list contains "shoulder touch"))[
(set: $enrichment_list to it+"shoulder touch")
(set: $vampire_enrichment_score to it+2)
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 5)[You lean lightly against Astarion's shoulder.
(if: $astarion_mood is "frightened" or $astarion_trust < 8)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](else:)[(if: $astarion_trust > 10)[(set: $rand to (random: 1, 6))(if: $rand is 1)[Astarion sighs and closes his eyes.
](elseif: $rand is 2)[Astarion tilts his head towards you.
](elseif: $rand is 3)[Astarion shifts slightly closer. Your shoulders overlap, which feels odd.
](elseif: $rand is 4)[Astarion relaxes.
](elseif: $rand is 5)[$astarion Are you tired?
](else:)[Astarion leans back against you, briefly forgetting you're intangible, and almost falls over.
]
](elseif: $astarion_trust > 4)[(set: $rand to (random: 1, 6))(if: $rand is 1)[Astarion sighs.
](elseif: $rand is 2)[Astarion tilts his head slightly towards you.
](elseif: $rand is 3)[Astarion shifts slightly closer to you.
](elseif: $rand is 4)[Astarion seems to relax slightly.
](elseif: $rand is 5)[$astarion Hm?
](else:)[Astarion glances down at his shoulder, where you're touching.
]
](else:)[(set: $rand to (random: 1, 3))(if: $rand is 1)[$astarion Hm?
](elseif: $rand is 2)[Astarion glances down at his shoulder, where you're touching.
](else:)[Astarion turns his head slightly towards you.
]
]](display: "Touch Options"){
(if: $astarion_mood is "frightened" or $astarion_trust < 8)[](else:)[
(set: $touch_threshold_count to it+1)
(if: $astarion_trust > 12)[<script>updateEmotion("calm",6);</script><script>updateEmotion("happy",3);</script>]
(else:)[<script>updateEmotion("calm",4);</script><script>updateEmotion("happy",2);</script>]
(if: not ($enrichment_list contains "shoulder lean"))[
(set: $enrichment_list to it+"shoulder lean")
(set: $vampire_enrichment_score to it+5)
]
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[You reach out and touch the side of Astarion's face.
(if: $astarion_mood is "frightened" and $astarion_trust < 15)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_mood is "tense" and $astarion_trust < 10)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_trust < 8)[Astarion twitches away from the contact.
He doesn't trust you enough for that.
](elseif: $touch_threshold_count > 7 or $touch_threshold_count is 0)[He turns towards you, attentive.
](elseif: $touch_threshold_count > 3)[He doesn't seem to mind that.
](else:)[Astarion tolerates the contact.
](display: "Touch Options"){
(set: $touch_threshold_count to it+1)
(if: not ($enrichment_list contains "head touch"))[
(set: $enrichment_list to it+"head touch")
(set: $vampire_enrichment_score to it+2)
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 8)[You brush your hand over Astarion's hair.
(if: $astarion_mood is "frightened" and $astarion_trust < 20)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_mood is "tense" and $astarion_trust < 15)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_trust < 10)[Astarion twitches away from the contact.
He doesn't trust you enough for that.
](else:)[(if: $successful_head_pat is 0)[Astarion inhales sharply, and you think he's about to tell you to stop.
But then he exhales slowly. Shakes his head.
$astarion All right. Why not. Go ahead.
](elseif: $successful_head_pat is 1)[Astarion makes a quiet sound. Then he murmurs:
$astarion I don't care if you're intangible.
$astarion If you ever tell anyone about this, I will find a way to kill you.
](elseif: $astarion_trust > 10)[(set: $rand to (random: 1, 4))(if: $rand is 1)[Astarion sighs.
](elseif: $rand is 2)[Astarion tilts his head towards the contact.
](elseif: $rand is 3)[Astarion relaxes.
](else:)[Astarion closes his eyes.
]
](else:)[(set: $rand to (random: 1, 3))(if: $rand is 1)[Astarion makes a quiet sound.
](elseif: $rand is 2)[Astarion holds very still.
](else:)[Astarion's fingers twitch, as if he is considering doing something.
]
]](display: "Touch Options"){
(set: $successful_head_pat to it+1)
(set: $touch_threshold_count to it+1)
(if: $astarion_trust > 12)[<script>updateEmotion("calm",8);</script><script>updateEmotion("happy",4);</script>]
(else:)[<script>updateEmotion("calm",6);</script><script>updateEmotion("happy",3);</script>]
(if: not ($enrichment_list contains "head pat"))[
(set: $enrichment_list to it+"head pat")
(set: $vampire_enrichment_score to it+6)
]
(set: $astarion_interacted to true)
}
](elseif: $sequence is 9)[You hug Astarion.
(if: $astarion_mood is "frightened" and $astarion_trust < 15)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_mood is "tense" and $astarion_trust < 10)[Astarion twitches away from the contact.
That's not surprising. He seems $astarion_mood.
](elseif: $astarion_trust < 10)[Astarion twitches away from the contact.
He doesn't trust you enough for that.
](else:)[(if: $successful_hug is 0)[Astarion gasps and tenses.<script>addAchieve("Get Safe And Cared For Idiot");</script>
That seems like a bad sign, so you start to draw back. But he reaches towards you. Through you.
$astarion Hells. No. Don't stop.
So you keep hugging him for as long as you can sustain contact. He's shaking a little.
](elseif: $successful_hug is 1)[Astarion shudders.
While you hold him, he makes a few noises like he's stopping himself from crying.
Eventually he calms down.
](elseif: $successful_hug < 6)[(set: $rand to (random: 1, 3))(if: $rand is 1)[Astarion makes a quiet, shuddering sound.
](elseif: $rand is 2)[Astarion holds very still.
](else:)[Astarion's hands move like he's trying to figure out how to return the motion, but there's no clear way to do that.
]
](else:)[(set: $rand to (random: 1, 4))(if: $rand is 1)[Astarion sighs and seems to unwind.
](elseif: $rand is 2)[Astarion leans towards you, which has the disorienting effect of briefly overlapping you.
](elseif: $rand is 3)[$astarion Thank you.
](else:)[Astarion moves his hands so that he's touching points on his shoulder and arm where you're making contact.
]
]](display: "Touch Options"){
(set: $successful_hug to it+1)
(set: $touch_threshold_count to it+2)
(if: $astarion_trust > 15)[<script>updateEmotion("calm",10);</script><script>updateEmotion("happy",4);</script>]
(else:)[<script>updateEmotion("calm",8);</script><script>updateEmotion("happy",3);</script>]
(if: not ($enrichment_list contains "vampire hug"))[
(set: $enrichment_list to it+"vampire hug")
(set: $vampire_enrichment_score to it+8)
]
(set: $astarion_interacted to true)
}
](elseif: $sequence is 10)[{
(set: $cast_cost to 5-$touch)
(if: $cast_cost < 1)[(set: $cast_cost to 1)]
}You can't truly cast here, but you can go through the motions.
The glow that gathers around your hands would be pretty in the dark. A sort of poor man's Dancing Lights.
(if: $energy < $cast_cost)[//Cast. Not enough Energy.//](else:)[|castLights>[Cast. //<span class="energy">$cast_cost</span>//]]
|return>[Something else.]{
(click: ?castLights)[(set: $sequence to 11)(set: $just_said to "cast lights")(set: $energy_change to (0-$cast_cost))(display: "update energy interaction")(go-to: $currentPassage)]
}](elseif: $sequence is 11)[(if: $just_said is "cast lights")[You trace glowing silhouettes, breaking the dark of the tomb with traces of magic.
Astarion turns towards you and watches.(if: $astarion_mood is not "frightened")[(if: not ($done_once_list contains "cast lights 1"))[
$astarion That's quite pretty.(set: $done_once_list to it+"cast lights 1")](elseif: not ($done_once_list contains "cast lights 2"))[
$astarion I seem to recall that something is supposed to happen after all that.
$astarion But perhaps not.(set: $done_once_list to it+"cast lights 2")]]
](display: "Touch Options"){
<script>addAchieve("Poor Man's Dancing Lights");</script>
(if: not ($enrichment_list contains "cast lights"))[
(set: $enrichment_list to it+"cast lights")
<script>updateEmotion("calm",4);</script>
<script>updateEmotion("happy",2);</script>
(set: $vampire_enrichment_score to it+7)
]
(set: $astarion_interacted to true)
}](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
(if: $touch_threshold_count > 15)[
(set: $touch_threshold_count to 0)
(set: $touch_trust to it+1)
]
}(if: $sequence is 0)[(display: "Astarion Description")
(display: "Speech Options"){
}](elseif: $sequence is 1)[You make a slight sound to mark your presence.
Astarion turns his head to track it.
(display: "Speech Options"){
<script>updateEmotion("curious",4);</script>
}](elseif: $sequence is 2)[{
(set: $perform_cost to 5-$speech)
(if: $perform_cost < 1)[(set: $perform_cost to 1)]
}What will you perform?
(if: $energy < $perform_cost)[//Bard Dance. Not enough Energy.//](else:)[|bardDancePerform>[Bard Dance. //<span class="energy">$perform_cost</span>//]]
(if: $energy < $perform_cost)[//The Power. Not enough Energy.//](else:)[|powerPerform>[The Power. //<span class="energy">$perform_cost</span>//]]
(if: $energy < $perform_cost)[//A song about a river. Not enough Energy.//](else:)[|riverPerform>[A song about a river. //<span class="energy">$perform_cost</span>//]]
|return>[Something else.]{
(click: ?bardDancePerform)[(set: $sequence to 3)(set: $just_said to "bard dance")(set: $energy_change to (0-$perform_cost))(display: "update energy interaction")(go-to: $currentPassage)]
(click: ?riverPerform)[(set: $sequence to 3)(set: $just_said to "river")(set: $energy_change to (0-$perform_cost))(display: "update energy interaction")(go-to: $currentPassage)]
(click: ?powerPerform)[(set: $sequence to 3)(set: $just_said to "power")(set: $energy_change to (0-$perform_cost))(display: "update energy interaction")(go-to: $currentPassage)]
}](elseif: $sequence is 3)[(if: $just_said is "bard dance")[You whistle an upbeat foot-tapper. It's a little surreal to hear the cheerful tune echoing brightly off the walls of the dark tomb.
Astarion turns towards you and listens.(if: $astarion_mood is not "frightened")[(if: not ($done_once_list contains "perform bard dance 1"))[
$astarion That's a trite little chestnut.(set: $done_once_list to it+"perform bard dance 1")](if: not ($done_once_list contains "perform bard dance 2"))[
$astarion I feel like you're not reading the room very well.(set: $done_once_list to it+"perform bard dance 2")]]
](elseif: $just_said is "river")[You whistle a wistful song about dreams and water.<script>addAchieve("Music Box");</script>
Astarion turns towards you and listens.
](elseif: $just_said is "power")[You whistle an enchanting crowd-pleaser.
Astarion turns towards you and listens.(if: $astarion_mood is not "frightened")[(if: not ($enrichment_list contains "perform"))[
He doesn't say anything, but by the end he's tilting his head back and forth in time to the music.]]
](display: "Speech Options"){
(if: not ($enrichment_list contains "perform"))[
(set: $enrichment_list to it+"perform")
<script>updateEmotion("calm",4);</script>
(if: $just_said is "power")[(set: $vampire_enrichment_score to it+10)](else:)[(set: $vampire_enrichment_score to it+7)]
(if: $just_said is "power")[<script>updateEmotion("happy",3);</script>](else:)[<script>updateEmotion("happy",2);</script>]
](else:)[
<script>updateEmotion("calm",2);</script>
(if: $just_said is "power")[<script>updateEmotion("happy",2);</script>](else:)[<script>updateEmotion("happy",1);</script>]
]
}](elseif: $sequence is 4)[{
(set: $rand to (random: 1, 3))
}(if: $just_said is "hey listen")[$astarion Hm. That feels like something which could become very tiresome, very quickly.
$astarion Please feel free to never say that again.
](elseif: $astarion_trust < 2)[Astarion doesn't say anything, but stares suspiciously in the direction of your voice.
](elseif: $astarion_trust < 5)[(if: $rand is 1)[$astarion Hm.
](elseif: $rand is 2)[$astarion Yes?
](elseif: $rand is 3)[$astarion What is it?
]
](elseif: $astarion_trust < 10)[(if: $rand is 1)[$astarion Ah. It's you.
](elseif: $rand is 2)[$astarion Hello there.
](elseif: $rand is 3)[$astarion What do you want?
]
](elseif: $astarion_trust < 15)[(if: $rand is 1)[$astarion You're here.
](elseif: $rand is 2)[$astarion I was just thinking about you.
](elseif: $rand is 3)[$astarion Ah. My favorite(if: $what_is_player is "ghost")[ ghost.](else:)[...whatever you are.]
]
](else:)[(if: $rand is 1)[$astarion Hello darling.
](elseif: $rand is 2)[$astarion Hm. My friend.
](elseif: $rand is 3)[$astarion I missed you.
]
]
(display: "Speech Options"){
(if: not ($enrichment_list contains "greeting"))[
(set: $enrichment_list to it+"greeting")
(set: $vampire_enrichment_score to it+2)
(if: $astarion_trust > 9)[<script>updateEmotion("calm",2);</script>](else:)[<script>updateEmotion("calm",1);</script>]
]
}](elseif: $sequence is 5)[{
(set: $rand to (random: 1, 3))
}(if: $astarion_trust < 2)[Astarion doesn't say anything, but stares suspiciously in the direction of your voice.
](elseif: $astarion_trust < 5)[$astarion What do you want?
](elseif: $morning_joke_count is 0)[Astarion snorts.
$astarion If you say so.
](elseif: $morning_joke_count is 1)[Astarion squints at the place where he thinks you are.
$astarion Really?
](elseif: $morning_joke_count is 2)[$astarion Is this what we're doing now? Is this a funny joke?
](elseif: $morning_joke_count is 3)[Astarion lets out an exasperated huff and shrugs his shoulders.
$astarion Fine. Good morning.
](elseif: $morning_joke_count is 4)[$astarion Good morning.
](elseif: $morning_joke_count is 5)[$astarion Good morning. What lovely weather we're having.
](elseif: $morning_joke_count is 6)[$astarion No. I disagree. It feels like afternoon.
](elseif: $morning_joke_count is 7)[$astarion Good evening.
](elseif: $morning_joke_count is 8)[$astarion I am actually certain it's midnight. Vampires can tell, you know.
](elseif: $morning_joke_count is 9)[$astarion What a lovely morning it is. Nothing like a sunr...
Astarion cuts himself off. He leans forward, head tilting down. He doesn't seem able to speak for a moment.
$astarion No. It's fine.
$astarion It's still a nice little joke.
$astarion Good morning.(set: $happy_value to it-3)<script>addAchieve("Good Morning");</script>
](else:)[(if: $rand is 1)[$astarion Good morning.
](elseif: $rand is 2)[$astarion Good afternoon.
](elseif: $rand is 3)[$astarion Good evening.
]
](display: "Speech Options"){
(if: $astarion_trust > 4)[(set: $morning_joke_count to it+1)]
(if: not ($enrichment_list contains "greeting"))[
(set: $enrichment_list to it+"greeting")
(set: $vampire_enrichment_score to it+3)
(if: $astarion_trust > 9)[<script>updateEmotion("calm",3);</script>](else:)[<script>updateEmotion("calm",2);</script>]
(if: $morning_joke_count > 4 and $astarion_trust > 4)[(set: $happy_value to it+1)]
]
}](elseif: $sequence is 6)[{
(set: $rand to (random: 1, 3))
}(if: $day is 173)[(if: $know_ghost_not_player is true)[$astarion I haven't encountered any murderous ghosts.
$astarion So today is an improvement on yesterday.
](else:)[Astarion watches the air where your voice comes from warily. As if looking for signs of potential danger. But all he says is--
$astarion Fine.
]](elseif: $day is 172)[$astarion ...
$astarion It's been a bit of a day.
](elseif: $day is 168 and $astarion_mood is "excited")[Astarion giggles.
](elseif: $day is 163)[Astarion gestures to the message on the door.
$astarion Just a touch discombobulated today.
](elseif: $ochre_state is "present")[$astarion I'm about to stab something. It's been a while since I've gotten to stab something.
$astarion But I am also possibly about to be burned by acid.
$astarion So it all balances out to neutral.
](elseif: $day is 158 and $astarion_nightmare_told is "invisible")[$astarion I've heard that apparently there's an invisible monster in the room.
$astarion So there's that.
](elseif: $day is 158 and $astarion_nightmare_told is "monster")[$astarion I've heard that apparently there's an invisible monster in the room.
$astarion So there's that.
](elseif: $speech is 3 and not ($chat_list contains "pedantic how are you correction"))[$astarion I think you're missing a verb there.
$astarion Marvelous. Thank you so much for asking.
{
(set: $chat_list to it+"pedantic how are you correction")
}](elseif: $astarion_mood is "excited")[$astarion I...good.
$astarion I'm...yes. Good.
](elseif: $astarion_mood is "happy")[$astarion I...
$astarion Just right now.
$astarion I think I'm all right.
](elseif: $astarion_trust > 5 and $day > 158 and $day < 163 and $astarion_mood is "calm" and not ($chat_list contains "is this forever"))[(set: $chat_list to it+"is this forever")(set: $sequence to 2)(go-to: "Small Chats")
](elseif: $astarion_trust > 9 and ($astarion_mood is "bored" or $astarion_mood is "calm") and not ($chat_list contains "how is ghost"))[(set: $chat_list to it+"how is ghost")(set: $sequence to 0)(go-to: "Small Chats")
](elseif: $astarion_trust > 12 and $day > 163 and ($astarion_mood is "bored" or $astarion_mood is "calm" or $astarion_mood is "happy") and not ($chat_list contains "miss the sun"))[(set: $chat_list to it+"miss the sun")(set: $sequence to 6)(go-to: "Small Chats")
](elseif: $astarion_trust < 3)[Astarion doesn't say anything, but stares suspiciously in the direction of your voice.
](elseif: $astarion_trust < 5 or $astarion_mood is "frightened")[(if: $rand is 1)[$astarion Fine.
](elseif: $rand is 2)[$astarion Peachy.
](elseif: $rand is 3)[$astarion Trapped in a crypt with a $player_term that asks inane questions.
]
](elseif: $astarion_trust < 10 or $astarion_mood is "tense")[(if: $rand is 1)[$astarion Guess.
](elseif: $rand is 2)[$astarion Trapped in a crypt.
](elseif: $rand is 3)[$astarion Fantastic.
]
](elseif: $astarion_mood is "calm")[(if: $rand is 1)[$astarion A bit better, now that you're here.
](elseif: $rand is 2)[Astarion makes a noncommittal noise.
](elseif: $rand is 3)[$astarion As well as can be expected.
]
](elseif: $astarion_mood is "bored")[(if: $rand is 1)[$astarion To be honest, I've been better.
](elseif: $rand is 2)[Astarion makes a noncommittal noise which wavers a bit at the end.
](elseif: $rand is 3)[Astarion shrugs with affected disinterest.
]
](else:)[Astarion shrugs.
](display: "Speech Options"){
(if: not ($enrichment_list contains "howareyou"))[
(set: $enrichment_list to it+"howareyou")
(set: $vampire_enrichment_score to it+3)
(if: $astarion_trust > 9)[<script>updateEmotion("calm",2);</script><script>updateEmotion("happy",1);</script>](else:)[<script>updateEmotion("calm",1);</script>]
]
}](elseif: $sequence is 7)[(if: not ($chat_list contains "first goodbye"))[
(set: $chat_list to it+"first goodbye")(set: $sequence to 0)(go-to: "Small Chats")
](else:)[(if: $astarion_trust < 2)[Astarion doesn't say anything, but stares suspiciously in the direction of your voice.
](elseif: $astarion_mood is "bored")[Astarion doesn't say anything.
](elseif: $astarion_mood is "frightened")[Astarion twitches. But then says:
$astarion Goodbye.
](else:)[$astarion Goodbye.
]
|returnTomb>[Continue]{
(if: not ($enrichment_list contains "goodbye"))[
(set: $enrichment_list to it+"goodbye")
(set: $vampire_enrichment_score to it+1)
<script>updateEmotion("calm",1);</script>
]
}]{
(set: $astarion_goodbye to true)
}](elseif: $sequence is 8)[True transformation is beyond you, but you find you can adjust your throat just enough to produce a soothing, soft, rumbling noise.
Astarion seems perplexed for a moment, but as he listens grows more and more relaxed.
(display: "Speech Options"){
(if: not ($enrichment_list contains "purr"))[
(set: $enrichment_list to it+"purr")
<script>updateEmotion("calm",6);</script>
(set: $vampire_enrichment_score to it+5)
<script>updateEmotion("happy",1);</script>
](else:)[
<script>updateEmotion("calm",4);</script>
<script>updateEmotion("happy",1);</script>
]
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?whisper)[(set: $sequence to 1)(display: "reduce energy interaction")(go-to: $currentPassage)]
}(if: $cold_astarion_state is "freezing")[Astarion is sitting, curled in on himself.
He's shivering violently.](else:)[(if: $astarion_hiding is true)[Astarion is hiding, entirely concealed, behind a column by the door.](elseif: $astarion_day_activity is not "empty")[Astarion is here.](elseif: $astarion_location is "sarcophagus")[Astarion is leaning against the sarcophagus.](elseif: $astarion_location is "atop sarcophagus")[Astarion is sitting on top of the sarcophagus.](elseif: $astarion_location is "niches")[Astarion is leaning against the wall by the funeral niches.](elseif: $astarion_location is "watching door")[Astarion is sitting in front of the stone door, examining the markings on it.](else:)[Astarion is sitting, mostly concealed, behind one of the columns.](if: $astarion_hands is not "healed")[
(if: $sight is 1)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](elseif: $sight is 2)[There's something wrong with his hands.](elseif: $sight > 2)[His hands are ragged with wounds that are not bleeding.(if: $astarion_cleanliness is "clean")[ The dust has been cleaned out of them.]]](if: $astarion_cleanliness is "clean")[
(if: $sight < 3)[He looks less dusty than he used to be.](else:)[He's cleaned his face with water.]](if: $cold_astarion_state is "cold" or $cold_astarion_state is "blanket" or $cold_astarion_state is "amber")[
(if: $cold_astarion_state is "cold")[He's shivering.](elseif: $cold_astarion_state is "blanket" and $cold_state is "increased")[He's wrapped himself in a burial shroud, but he's still shivering.](elseif: $cold_astarion_state is "blanket")[He's wrapped himself in a burial shroud.](elseif: $cold_astarion_state is "amber")[He's keeping the fire amber close at hand.]]
He seems (if: $astarion_mood is "happy")[vaguely content.](elseif: $astarion_mood is "curious")[curious.](elseif: $astarion_mood is "calm")[relatively calm.](elseif: $astarion_mood is "tense")[prickly and nervous.](elseif: $astarion_mood is "frightened")[frightened.](elseif: $astarion_mood is "excited")[more animated than usual.](else:)[|exp>[bored.](click-replace: ?exp)[empty.]](if: $active_event contains "astarion")[
Astarion is looking for you(if: $event_is_stale is true)[, but without much hope.](else:)[.]](elseif: $astarion_day_activity is "fur")[
Astarion is picking fur out of his teeth.](elseif: $astarion_day_activity is "sharpen pottery")[
Astarion is sharpening a piece of broken pottery. He pauses in his work when he notices you're here.](elseif: $astarion_day_activity is "brick" and $astarion_location is "niches")[
Astarion is picking away at a brick in the wall using his knife. He pauses in his work when he notices you're here.](elseif: $astarion_day_activity is "alchemy" and $astarion_location is "sarcophagus")[
Astarion is doing some sort of strange alchemy. He pauses in his work when he notices you're here.](elseif: $astarion_day_activity is "sarcophagus" and $astarion_location is "sarcophagus")[
Astarion is working on opening the sarcophagus.(if: $day > 163)[ He pauses in his work when he notices you're here.]](elseif: $astarion_day_activity is "examine clive")[
Astarion is examining a small, brown teddy bear.](elseif: $astarion_day_activity is "examine knife")[
Astarion is examining a knife.](elseif: $astarion_day_activity is "examine toolkit")[
Astarion is examining a leather toolkit.](elseif: $astarion_day_activity is "examine ring")[
Astarion has a ruby ring on his finger. He is admiring it.] ](if: $sequence is 0)[Astarion mostly sits and stares emptily into the darkness.
(if: $astarion_trust < 5)[But occasionally his eyes focus. He glances warily around the room, as if looking for something, but not certain he wants to find it.](else:)[But occasionally his eyes focus and he glances around the room, as if looking for something.](if: $hand_held is true)[
Sometimes he flexes his hand.]
<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
<span id="hello-1" class="energy-link" data-content="Speak: Hello./Speech/2"></span>
<span id="name" class="energy-link" data-content="Speak: Astarion?/Speech/2"></span>
<span id="hello-2" class="energy-link" data-content="Speak: I`m here./Speech/3"></span>{
(set: $active_event to "empty")
(set: $vampire_enrichment_score to it+3)
(set: $just_said to "")
}](elseif: $sequence is 1)[Astarion twitches at the sudden break in silence.
(if: $just_said is "name")[$astarion_name Oh. It knows my name.
$astarion_name Fantastic.
](elseif: $just_said is "hello")[$astarion_name You can talk?
$astarion_name It can talk.
](elseif: $just_said is "whisper" or $just_said is "tap")[$astarion_name You.
$astarion_name I heard that. That was...
$astarion_name Someone's there.
]
|next>[Continue]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 2)[Astarion stares into the darkness near where you are, where the sound came from.
He shakes his head, and then asks hesitantly:
$astarion_name Are you some sort of ghost? Am I being haunted?
(if: $speech < 2)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
](else:)[<span id="no" class="energy-link" data-content="Say no./Speech/0/12"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0/4"></span>
<span id="dream" class="energy-link" data-content="Speak: You`re dreaming./Speech/3/8"></span>
]{
(set: $just_said to "")
}](elseif: $sequence is 3)[$astarion_name Really? Oh Gods, this is going to be tiresome.
$astarion_name Fine. Once for yes, and twice for no.
$astarion_name Are you a ghost?
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>{
(set: $just_said to "")
}
](elseif: $sequence is 4)[Astarion doesn't speak for a little while.
(if: $just_said is "yes")[(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> Then he asks very quietly:
$astarion_name Did I kill you?
<span id="no" class="energy-link" data-content="Say no./Speech/0/6"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0/6"></span>{
(set: $what_is_player to "ghost")
(set: $just_said to "")
}](else:)[Then he says something, but he speaks so quietly you can't make out the words. <span class="italicEmph">//Requires Sight: 2//</span>
<span id="what" class="energy-link" data-content="Speak: What?/Speech/2"></span>
|next>[Wait.]{
}]](elseif: $just_said is "no")[$astarion_name Am I...(set: $what_is_player to "shadow")
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> Astarion covers his face and mutters to himself.
$astarion_name I am not going to ask hallucinations if they are hallucinations. I have some standards.](else:)[Astarion covers his face and mutters something too quietly for you to hear. <span class="italicEmph">//Requires Sight: 2//</span>]
|goToConclusion>[Continue]
]](elseif: $sequence is 5)[Astarion shakes his head slightly. As if changing his mind about whatever he just said.
|goToConclusion>[Continue]
](elseif: $sequence is 6)[(if: $just_said is "yes")[Astarion's shoulders hunch and he draws back slightly from where he thinks you are.
He doesn't seem to have anything else to say.
|findAstarion>[Continue]{
(set: $player_term to "ghost")
(set: $player_killed_by to "astarion")
(display: "set mood frightened")
<script>updateTrust(-1);</script>
(set: $astarion_refuse_interaction to true)
}](else:)[He relaxes slightly.
$astarion_name Did Cazador kill you?
The name is sharp on his tongue, even though he seems tired.
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>{
(set: $just_said to "")
}]](elseif: $sequence is 7)[(if: $just_said is "yes")[His head tilts to the side. He mutters:
$astarion_name How nice to have something in common.
|goToConclusion>[Continue]{
<script>updateTrust(1);</script>
(set: $murdered_by_cazador to true)
}](else:)[$astarion_name How mysterious.
$astarion_name I won't pry. That would be rude.
|goToConclusion>[Continue]{
}]](elseif: $sequence is 8)[Astarion is clearly about to say something contemptuous, but then stops.
He looks around the small stone room.
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> His expression of immediate disbelief erodes slightly under the appeal of that idea. However delusional it seems.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
$astarion_name Is there a way to wake up?
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="maybe-1" class="energy-link" data-content="Speak: Maybe./Speech/1"></span>
<span id="maybe-2" class="energy-link" data-content="Speak: Don`t know./Speech/1"></span>(if: $basePassage is "Speech")[
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/9/0"></span>]{
(if: $day < 154)[<script>addAchieve("Immediately Lucid");</script>]
(if: $what_is_player is "")[(set: $what_is_player to "dream")]
(set: $just_said to "")
(set: $astarion_learned_dream to $day)
}](elseif: $sequence is 9)[(if: $just_said is "yes")[$astarion_name What do I need to do?
<span id="hope" class="energy-link" data-content="Speak: Hope./Speech/1"></span>
<span id="despair" class="energy-link" data-content="Speak: Don`t despair./Speech/1"></span>
<span id="monster" class="energy-link" data-content="Speak: Kill monster./Speech/1"></span>
<span id="gale" class="energy-link" data-content="Speak: Ask Gale./Speech/1"></span>
<span id="dunno" class="energy-link" data-content="Speak: Don`t know./Speech/1"></span>(if: $basePassage is "Speech")[
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/9/0"></span>]{
(set: $just_said to "")
}](elseif: $just_said is "maybe")[$astarion_name I see.
Astarion speaks slowly, tone dripping with renewed skepticism.
$astarion_name If you come up with any ideas, do let me know.
|goToConclusion>[Continue]{
}](elseif: $just_said is "no")[$astarion_name Of course not.
He mutters. His eyes unfocus from the spot where your voice comes from. He goes back to staring off into the darkness.
|findAstarion>[Continue]{
(set: $astarion_mood to "bored")
(set: $player_term to "voice")
}](elseif: $just_said is "nothing")[Astarion waits for a while, then realizes you're not going to say anything else.
He throws up his hands.
$astarion Thank you so much for that ominous and surreal interlude.
|findAstarion>[Continue]{
}]](elseif: $sequence is 10)[(if: $just_said is "hope")[Astarion snorts.
$astarion_name That's hideously saccharine.
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> $astarion_name And in short supply.
He mutters.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//]
|next>[Continue]
](elseif: $just_said is "despair")[Astarion doesn't speak for a while. When he does, his tone is very flat:
$astarion_name I'll work on that.
|next>[Continue]
](elseif: $just_said is "monster")[Astarion glances around the small, dusty, empty room.
$astarion_name Can you see something I can't?
|next>[Continue]
](elseif: $just_said is "gale")[Astarion frowns.
$astarion_name Is that some sort of metaphor? 'Ask the storm?'
|next>[Continue]
](elseif: $just_said is "dunno")[$astarion_name I see.
Astarion speaks slowly, tone dripping with renewed skepticism.
$astarion_name If you come up with any ideas, do let me know.
|next>[Continue]
]{
}](elseif: $sequence is 11)[Astarion holds his hand up, as if staving off any response.
$astarion_name I just reached my limit for talking about insane things for today.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He is affecting sarcasm, but there is a wavering tension at the edge of his voice. He is genuinely concerned that he's going mad.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]
|goToConclusion>[Continue]{
}](elseif: $sequence is 12)[Astarion's head tilts to the side. He's staring at the space of darkness where your voice is coming from.
$astarion_name If you're not a ghost, what in the world are you?
<span id="companion" class="energy-link" data-content="Speak: Companion./Speech/1"></span>
<span id="friend" class="energy-link" data-content="Speak: Friend./Speech/1"></span>
<span id="hero" class="energy-link" data-content="Speak: Hero./Speech/1"></span>
<span id="love" class="energy-link" data-content="Speak: Love./Speech/1"></span>{
(set: $just_said to "")
}](elseif: $sequence is 13)[(if: $just_said is "companion")[Astarion frowns skeptically. But then says:
$astarion_name I suppose I could use one of those.
|next>[Continue]{
<script>updateTrust(1);</script>
(set: $what_is_player to "friend")
}](elseif: $just_said is "friend")[Astarion frowns skeptically.
$astarion_name I don't...
He hesitates.
$astarion_name Do as you wish, I suppose.
|next>[Continue]{
<script>updateTrust(1);</script>
(set: $what_is_player to "friend")
}](elseif: $just_said is "hero")[Astarion's expression sinks into deep suspicion.
$astarion_name How nice for you.
|next>[Continue]{
(display: "set mood tense")
<script>updateTrust(-1);</script>
(set: $what_is_player to "hero")
}](elseif: $just_said is "love")[Astarion twitches.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He mutters under his breath:
$astarion_name A ghost then. And in denial about being dead.](else:)[He mutters something to himself. <span class="italicEmph">//Requires Sight: 3//</span>]
Then he makes a vague and non-committal noise.
|next>[Continue]{
(display: "set mood tense")
(set: $what_is_player to "love")
}]](elseif: $sequence is 14)[(if: $what_is_player is "ghost")[$astarion_name A ghost in a tomb. I suppose you're just as apt as I am.](elseif: $what_is_player is "friend" or $what_is_player is "companion")[$astarion_name Well. 'Friend.'](elseif: $what_is_player is "hero")[$astarion_name Well. 'Hero.'](else:)[$astarion_name Well. Whatever you are. (if: $what_is_player is "dream")[A dream.](elseif: $speech < 2)[A shadow.<script>addAchieve("Like A Shadow");</script>](else:)[A voice.]]
$astarion_name I suppose I don't mind you being here.
(if: $fuck_off_count > 0)[$astarion_name But mind your spectral little hands in the future.](else:)[$astarion_name Just be a polite crypt-mate. Hmm?]
|findAstarion>[Continue]{
(if: $what_is_player is "ghost")[(set: $player_term to "ghost")](elseif: $what_is_player is "dream")[(set: $player_term to "dream")](elseif: $speech < 2)[(set: $player_term to "shadow")](else:)[(set: $player_term to "voice")]
(if: $astarion_mood is not "tense")[(set: $astarion_mood to "calm")]
}](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?goToConclusion)[(if: $basePassage is "Speech")[(set: $sequence to 0)(go-to: "Astarion")](else:)[(set: $sequence to 14)(go-to: $currentPassage)]]
}{
<script>reduceEnergy();</script>
}{(set: $energy to $energy - 1)
(if: $energy > $maxEnergy)[(set: $energy to $maxEnergy)]
(if: $energy < 0)[(set: $energy to 0)]
<script>playAudio("aa_clock_tick1");</script>
(set: $astarion_interacted to true)
}{(set: $energy to $energy + $energy_change)
(if: $energy > $maxEnergy)[(set: $energy to $maxEnergy)]
(if: $energy < 0)[(set: $energy to 0)]
<script>playAudio("aa_clock_tick1");</script>
(set: $astarion_interacted to true)
}{
(set: $astarion_mood to "tense")
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
}{
(set: $astarion_mood to "frightened")
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
}{
(set: $astarion to "<span style='color: #ebe8cd;'>Astarion:</span> ")
(set: $rand to (random: 1, 3))
(set: $astarion_trust to 6)
}(if: $astarion_trust < 2)[Astarion doesn't say anything, but stares suspiciously in the direction of your voice.
](elseif: $astarion_trust < 5)[$astarion What do you want?
](elseif: $morning_joke_count is 0)[Astarion snorts.
$astarion If you say so.
](elseif: $morning_joke_count is 1)[Astarion squints at the place where he thinks you are.
$astarion Really?
](elseif: $morning_joke_count is 2)[$astarion Is this what we're doing now? Is this a funny joke?
](elseif: $morning_joke_count is 3)[Astarion lets out an exasperated huff and shrugs his shoulders.
$astarion Fine. Good morning.
](elseif: $morning_joke_count is 4)[$astarion Good morning.
](elseif: $morning_joke_count is 5)[$astarion Good morning. What lovely weather we're having.
](elseif: $morning_joke_count is 6)[$astarion No. I disagree. It feels like afternoon.
](elseif: $morning_joke_count is 7)[$astarion Good evening.
](elseif: $morning_joke_count is 8)[$astarion I am actually certain it's midnight. Vampires can tell, you know.
](elseif: $morning_joke_count is 9)[$astarion What a lovely morning it is. Nothing like a sunr...
Astarion cuts himself off. He leans forward, head tilting down. He doesn't seem able to speak for a moment.
$astarion No. It's fine.
$astarion It's still a nice little joke.
$astarion Good morning.(set: $happy_value to it-3)
](else:)[(if: $rand is 1)[$astarion Good morning.
](elseif: $rand is 2)[$astarion Good afternoon.
](elseif: $rand is 3)[$astarion Good evening.
]
]|refresh>[Continue]{
(set: $morning_joke_count to it+1)
}(if: $sequence is 0)[$astarion I'm delightful. How are you?
(if: $energy is 0)[//You don't have the energy to speak.//
](else:)[|speakGhost>[Speak: "Ghost." //<span class="energy">1</span>//]
|speakNightmare>[Speak: "Nightmare." //<span class="energy">1</span>//]
|speakPeach>[Speak: "Peachy." //<span class="energy">1</span>//]
(if: $speech > 2)[|speakPeach>[Speak: "Peachy keen." //<span class="energy">1</span>//]](else:)[|gray3>[Speak: "Peachy keen."] (click: ?gray3)[//Requires Speech 3//]]
(if: $speech > 2)[|speakAwful>[Speak: "Fucking awful." //<span class="energy">1</span>//]](else:)[|gray4>[Speak: "Fucking awful."] (click: ?gray4)[//Requires Speech 3//]]
](if: $speech > 3)[|speakWorse>[Speak: "I've been worse." //<span class="energy">1</span>//]](else:)[|gray5>[Speak: "I've been worse."] (click: ?gray5)[//Requires Speech 4//]]
|sayNothing>[Be silent.]{
(set: $just_said to "")
(if: not ($enrichment_list contains "howareyou"))[
(set: $enrichment_list to it+"howareyou")
(set: $vampire_enrichment_score to it+1)
<script>updateEmotion("calm",1);</script>
]
(click: ?speakGhost)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "ghost")(go-to: $currentPassage)]
(click: ?speakNightmare)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "nightmare")(go-to: $currentPassage)]
(click: ?speakPeach)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "peachy")(go-to: $currentPassage)]
(click: ?speakAwful)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "awful")(go-to: $currentPassage)]
(click: ?speakWorse)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "worse")(go-to: $currentPassage)]
(click: ?sayNothing)[(set: $sequence to it+1)(set: $just_said to "nothing")(go-to: $currentPassage)]
}](elseif: $sequence is 1)[(if: $just_said is "no words")[$astarion Right. Still voiceless.
He sounds mildly embarassed for having asked.
](elseif: $just_said is "ghost")[$astarion Mm. Yes. Dead in a crypt.
$astarion I can see how that might dampen one's mood.
](elseif: $just_said is "nightmare")[$astarion Yes. That about sums it up.
](elseif: $just_said is "peachy")[$astarion Well, isn't that nice to hear.
](elseif: $just_said is "awful")[Astarion actually laughs at that.
$astarion Welcome to the club.(set: $happy_value to it+3)
](elseif: $just_said is "worse")[$astarion <i>Really?</i><script>addAchieve("By Durge Standards This Is Fine");</script>
Astarion doesn't speak for a moment.
$astarion I don't think I'm going to ask.
](elseif: $just_said is "nothing")[Astarion waits for a while. When you don't respond, his face falls. And then hardens.
$astarion Rude little $player_term.(set: $happy_value to it-1)<script>updateTrust(-1);</script>
]|findAstarion>[Continue]{
}](elseif: $sequence is 2)[Astarion was staring into the darkness with a fixed expression. Your question seems to jar him loose from a thought.
Then, after a moment of reflection, he doesn't see any reason not to let the thought come out of his mouth.
$astarion I don't know if I'm ever getting out of here.
$astarion What if this is what life is now?
$astarion What if this is forever?
(if: $energy is 0)[//You don't have the energy to speak.//
](else:)[|speakNotForever>[Speak: "Not." //<span class="energy">1</span>//]
(if: $speech > 2)[|speakNotForever>[Speak: "Not forever." //<span class="energy">1</span>//]](else:)[|gray1>[Speak: "Not forever."] (click: ?gray1)[//Requires Speech 3//]]
(if: $speech > 2)[|speakHere>[Speak: "I'm here." //<span class="energy">1</span>//]](else:)[|gray2>[Speak: "I'm here."] (click: ?gray2)[//Requires Speech 3//]]
(if: $speech > 2)[|speakSave>[Speak: "Save you." //<span class="energy">1</span>//]](else:)[|gray3>[Speak: "Save you."] (click: ?gray3)[//Requires Speech 3//]]
(if: $speech > 3)[|speakSurvived>[Speak: "You survived once." //<span class="energy">1</span>//]](else:)[|gray4>[Speak: "You survived once."] (click: ?gray4)[//Requires Speech 4//]]
]|sayNothing>[Be silent.]{
(set: $just_said to "")
(if: not ($enrichment_list contains "howareyou"))[
(set: $enrichment_list to it+"howareyou")
(set: $vampire_enrichment_score to it+1)
<script>updateEmotion("calm",1);</script>
]
(click: ?speakNotForever)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "not forever")(go-to: $currentPassage)]
(click: ?speakHere)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "here")(go-to: $currentPassage)]
(click: ?speakSave)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "save")(go-to: $currentPassage)]
(click: ?speakSurvived)[(set: $sequence to it+1)(display: "reduce energy")(set: $just_said to "survived")(go-to: $currentPassage)]
(click: ?sayNothing)[(set: $sequence to it+1)(set: $just_said to "nothing")(go-to: $currentPassage)]
}](elseif: $sequence is 3)[(if: $just_said is "not forever")[$astarion You don't know that.
$astarion You don't know what he's like.
$astarion He might...
Astarion buries his face in his hands and shakes for a while.(set: $astarion_mood to "frightened")
](elseif: $just_said is "here")[(if: $astarion_trust < 10)[$astarion You? What even are you?
$astarion You're nothing. A voice in the dark.
$astarion I'm talking to nothing.
Astarion buries his face in his hands and stops responding to you.(set: $astarion_refuse_interaction to true)(set: $astarion_mood to "frightened")
](elseif: $astarion_trust < 10)[$astarion Yes. You are.
$astarion I suppose you are.
$astarion I suppose that's something.(set: $astarion_mood to "tense")
](else:)[$astarion Yes. You are.
$astarion I suppose you are.
$astarion ...
$astarion Don't leave.
]](elseif: $just_said is "save")[Astarion hisses in disgust.
$astarion Kindly fuck off with that.(set: $astarion_mood to "tense")
](elseif: $just_said is "survived")[Astarion stares into the darkness where your voice is coming from.
$astarion That feels true.
He turns away from you. He speaks quietly, clearly to himself.
$astarion Why does that feel true?(set: $astarion_mood to "calm")
](elseif: $just_said is "nothing")[When you say nothing in response to this Astarion's shoulder's hunch. He covers his face. He starts breathing in quick, hitching gasps. Like he can't get enough air, which doesn't make any sense, since he shouldn't need any at all.
This goes on for maybe five minutes before winding down.
He doesn't respond to you for the rest of the day.(set: $astarion_refuse_interaction to true)(set: $astarion_mood to "frightened")<script>updateTrust(-2);</script>
]|findAstarion>[Continue]{
}](elseif: $sequence is 4)[Astarion straightens.
$astarion What do you mean?
$astarion Where are you going?
Away / Asleep / No response
Goodbye.
- No response - All right. Goodbye then.
- When will you be back? (Soon / Don't know / Tomorrow)
-- He will hold you to the tomorrow promise (lose trust and comment if you break it, gain trust and comment if you keep it)
- every ten constant goodbye/hello cycles earns a trust.
- I'm not sure this is necessary. Postpone.
](elseif: $sequence is 5)[$astarion Was that Godey throwing a fit outside?
$astarion What a delight to listen to.
$astarion And I think you had something to do with it?
$astarion You're a treasure.
|findAstarion>[Continue]{
<script>updateTrust(1);</script>
}](elseif: $sequence is 6)[$astarion I miss the sun.
$astarion Odd sort of a thing for me to say, isn't it? We're not exactly on friendly terms.
$astarion It's just so far away right now.
<span id="sorry" class="energy-link" data-content="Speak: Sorry./Speech/2/+1/1"></span>
<span id="notOdd" class="energy-link" data-content="Speak: Not odd./Speech/3/+1/1"></span>
<span id="again" class="energy-link" data-content="Speak: Have it again./Speech/4/+1/1"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
(set: $enrichment_list to it+"howareyou")
(set: $vampire_enrichment_score to it+1)
<script>updateEmotion("calm",1);</script>
}](elseif: $sequence is 7)[(if: $just_said is "sorry")[Astarion makes a disgruntled noise and waves dismissively at you.
$astarion I don't need your pity. I'm just making conversation.
](elseif: $just_said is "notOdd")[$astarion I assure you it is.
$astarion That's sweet of you to say, though.
](elseif: $just_said is "again")[$astarion Now there's an absurd pipe dream if I've ever heard one.
$astarion You're sweet, though.<script>addAchieve("You Will Have That Again");</script>
](elseif: $just_said is "touch")[Astarion makes a vague motion as if to pat your hand, which doesn't quite work since your hand doesn't physically exist.
$astarion It's fine. I'm just making conversation.
](else:)[Astarion waits for you to say something, and when you don't, grows tense.(set: $astarion_mood to "tense")
$astarion Whatever. It doesn't matter.
]
|findAstarion>[Continue]{
}](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[Astarion is by the stone door. His hands are at the seam. It looks like he's trying to peel it open with his nails.
$astarion Please.
$astarion I'm sorry.
$astarion I won't do it again.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap sharply on the stone./Touch/1"></span>
](elseif: $speech is 1)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="stop" class="energy-link" data-content="Speak: Stop./Speech/2"></span>
<span id="name" class="energy-link" data-content="Speak: Astarion./Speech/2/2"></span>
<span id="useless" class="energy-link" data-content="Speak: Useless./Speech/2"></span>
<span id="hurt" class="energy-link" data-content="Speak: Hurting yourself./Speech/3/2"></span>
<span id="cazador" class="energy-link" data-content="Speak: Cazador won't care./Speech/4"></span>
<span id="touch" class="energy-link" data-content="Touch him./Touch/1"></span>
<span id="pull" class="energy-link" data-content="Pull him back from the door./Touch/3"></span>
|leave>[Don't interfere.]{
(set: $astarion_interacted to true)
(set: $active_event to "empty")
(set: $just_said to "")
(set: $astarion_mood to "tense")
(set: $healthDisplay to true)
(set: $health_change to -1)(display: "update health silent")
}](elseif: $sequence is 1)[(if: $just_said is "cazador")[The name 'Cazador' makes Astarion flinch.
Which is actually good just now, because he flinches back from the door. It jars him out of what he's doing.
He glances wildly around the room. Doesn't see anything. Calms down slightly.
|goToCorner>[Continue]{
}](elseif: $just_said is "touch")[Astarion snatches his arm back from where you touched it.
He glances wildly around the room. Then he glares at where he thinks you are.
He looks angry and scared. But at least he's not hurting his hands on the door anymore.
|goToCorner>[Continue]{
<script>updateTrust(-1);</script>
(set: $astarion_mood to "frightened")
}](elseif: $just_said is "pull")[Astarion shrieks, turns around, and tries to attack you. Maul you with his teeth.
It doesn't work. You're not there.
At least he's not hurting his hands on the door anymore.
|goToCorner>[Continue]{
<script>updateTrust(-2);</script>
(set: $astarion_mood to "frightened")
}](else:)[(if: $just_said is "useless")[Astarion twitches, but doesn't respond to you.<script>updateTrust(-1);</script>](else:)[He doesn't seem to hear you.] He continues to rake his fingers against the door.
$astarion Let me out.
$astarion I've learned.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap sharply on the stone./Touch/1"></span>
](elseif: $speech is 1)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="name" class="energy-link" data-content="Speak: Astarion./Speech/2/3"></span>
<span id="wait" class="energy-link" data-content="Speak: Wait./Speech/2"></span>
<span id="notworking" class="energy-link" data-content="Speak: Not working./Speech/3/3"></span>
<span id="pleasestop" class="energy-link" data-content="Speak: Please stop./Speech/3/3"></span>
<span id="foolish" class="energy-link" data-content="Speak: This is foolish./Speech/4"></span>
<span id="touch" class="energy-link" data-content="Touch him./Touch/1"></span>{
(set: $just_said to "")
(set: $health_change to -1)(display: "update health silent")
}]](elseif: $sequence is 2)[(if: $just_said is "touch")[Astarion twitches his arm back from where you touched it.
But he doesn't seem surprised. He knew you were there, on some level.
And he's stopped hurting his hands on the door.
|goToCorner>[Continue]{
}](else:)[(if: $just_said is "foolish")[Astarion's shoulders hunch. He has slowed down slightly.<script>updateTrust(-1);</script>](else:)[Astarion has slowed down slightly.]
$astarion Please let me out.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap sharply on the stone./Touch/1"></span>
](elseif: $speech is 1)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="name" class="energy-link" data-content="Speak: Astarion./Speech/2"></span>
<span id="please" class="energy-link" data-content="Speak: Please./Speech/2"></span>
<span id="stop" class="energy-link" data-content="Speak: Stop it./Speech/3"></span>{
(set: $health_change to -1)(display: "update health silent")
}]](elseif: $sequence is 3)[Astarion has stopped talking. He looks a little more in his right mind.
He seems to be having trouble pulling away from the door. His fingers still move compulsively.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap sharply on the stone./Touch/1"></span>
](elseif: $speech is 1)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="name" class="energy-link" data-content="Speak: Astarion./Speech/2"></span>
<span id="enough" class="energy-link" data-content="Speak: Enough./Speech/2"></span>
<span id="letgo" class="energy-link" data-content="Speak: Let go./Speech/3"></span>
<span id="touch" class="energy-link" data-content="Touch his wrist./Touch/1"></span>{
(set: $health_change to -1)(display: "update health silent")
}](elseif: $sequence is 4)[(if: $just_said is "touch")[You touch Astarion's wrist, far below the bruises and scrapes on his hand.
He draws his hands back from the door.
|goToCorner>[Continue]{
}](else:)[Astarion stops.
He sinks back from crouching by the door into sitting on the floor.
|next>[Continue]{
}]](elseif: $sequence is 5)[Astarion retreats from the door. He moves to the column beside it.
He sits behind the column, pressed back into the corner.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
](elseif: $speech > 0)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="breathe" class="energy-link" data-content="Speak: Breathe./Speech/2"></span>
<span id="okay" class="energy-link" data-content="Speak: You okay?/Speech/3"></span>
<span id="listen" class="energy-link" data-content="Speak: Listen to me./Speech/4"></span>
|leaveGentler>[Do nothing.]{
(click: ?leaveGentler)[(set: $sequence to 14)(go-to: $currentPassage)]
}](elseif: $sequence is 6)[(if: $just_said is "tap" or $just_said is "whisper")[$astarion Yes.
$astarion I know you're there.
He doesn't speak for a little while.
|notUsually>[Continue]{
<script>updateEmotion("calm",8);</script>
<script>updateTrust(1);</script>
}](elseif: $just_said is "breathe")[$astarion I don't need to...
$astarion Fine.
Astarion takes a shaky breath in. Then exhales. He does this a few more times. It does seem to help.
|notUsually>[Continue]{
(set: $astarion_mood to "calm")
<script>updateTrust(1);</script>
}](elseif: $just_said is "okay")[$astarion <i>No.</i>
$astarion What an idiotic question.
|findAstarion>[Continue]{
}](elseif: $just_said is "listen")[$astarion What?
<span id="temporary" class="energy-link" data-content="Speak: This is temporary./Speech/4"></span>
<span id="getout" class="energy-link" data-content="Speak: You get out./Speech/4"></span>
<span id="notreal" class="energy-link" data-content="Speak: This isn't real./Speech/4"></span>(if: $class is "rogue")[
<span id="unbreakable" class="energy-link" data-content="[ROGUE] Speak: You`re unbreakable./Speech/3/9"></span>]{
}](else:)[(set: $sequence to 18)(go-to: $currentPassage)
]](elseif: $sequence is 7)[(if: $just_said is "temporary" or $just_said is "getout")[$astarion You don't know that.
<span id="do" class="energy-link" data-content="Speak: I do./Speech/3"></span>
<span id="seen" class="energy-link" data-content="Speak: I've seen it./Speech/4"></span>{
}](elseif: $just_said is "notreal")[Astarion stares into the dark blankly.
Then he shakes his head, like he can't even begin to engage with that statement right now.
|findAstarion>[Continue]{
}]](elseif: $sequence is 8)[Astarion shakes his head.
He looks a little calmer, though.
|findAstarion>[Continue]{
(set: $astarion_mood to "calm")
<script>updateTrust(1);</script>
}](elseif: $sequence is 9)[Astarion laughs hollowly and lifts up his ragged hands.
$astarion I have evidence to the contrary.
<span id="evidence" class="energy-link" data-content="Speak: Fuck your evidence./Speech/4"></span>
<span id="say" class="energy-link" data-content="Speak: Say it./Speech/4"></span>{
<script>addAchieve("You're Unbreakable");</script>
}](elseif: $sequence is 10)[(if: $just_said is "evidence")[$astarion What a foul mouthed little $player_term.
He seems considerably calmer. Even amused.
|findAstarion>[Continue]{
(set: $astarion_mood to "calm")
<script>updateTrust(1);</script>
}](elseif: $just_said is "say")[$astarion Pushy little $player_term, aren't you?
$astarion Fine. I am unbreakable.
He's acting like he's indulging you, but you think the words help.
|findAstarion>[Continue]{
(set: $astarion_mood to "calm")
<script>updateTrust(1);</script>
}]
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[He's stopped hurting himself against the door.
You decide it might be best to just pretend this didn't happen.
You let him be.
|returnTomb>[Continue]
{
(set: $astarion_refuse_interaction to true)
}](elseif: $sequence is 15)[You leave Astarion alone.
You move to the far side of the tomb so you don't have to listen to the words or the sound of his hands on stone.
|next>[Continue]{
}](elseif: $sequence is 16)[Eventually, it stops.
|returnTomb>[Continue]
{
(set: $health_change to -10)(display: "update health silent")
(set: $astarion_refuse_interaction to true)
}](elseif: $sequence is 17)[$astarion I'm not usually like this.
He subsides after that. He doesn't have anything else to say.
And you can't say anything at all.
|findAstarion>[Continue]{
}](elseif: $sequence is 18)[$astarion I'm not usually like this.
He subsides after that.
(if: $class is "cleric")[<span id="notFault" class="energy-link" data-content="[CLERIC] Speak: Not your fault./Speech/4"></span>
]|findAstarion>[Continue]{
}](elseif: $sequence is 19)[$astarion I...
$astarion Fine.
$astarion Sure.
|findAstarion>[Continue]{
<script>updateTrust(1);</script>
<script>addAchieve("Healing Words");</script>
}]{
(click: ?attention1)[(set: $sequence to it+1)(display: "reduce energy")(go-to: $currentPassage)]
(click: ?attention2)[(set: $sequence to it+1)(display: "reduce energy")(go-to: $currentPassage)]
(click: ?touch)[(set: $sequence to it+1)(set: $just_said to "touch")(display: "reduce energy")(go-to: $currentPassage)]
(click: ?goToCorner)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?leave)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?notUsually)[(set: $sequence to 18)(go-to: $currentPassage)]
}(if: $sequence is 0)[{
(if: $asked_list contains "whose-tomb" and $asked_list contains "escape-tomb" and $asked_list contains "escape-door" and $asked_list contains "sarcophagus-tomb" and $asked_list contains "crest-sarcophagus" and $asked_list contains "open-sarcophagus")[(set: $done_with_tomb to true)]
(if: $done_with_tomb is true and $seen_treasure is true)[ (if: not ($asked_list contains "treasure-inside-sarcophagus"))[(set: $done_with_tomb to false)] ]
(if: $asked_list contains "who-cazador" and $asked_list contains "where-cazador" and $asked_list contains "murder-cazador")[(set: $done_with_cazador to true)]
}(if: $astarion_trust < 5)[Astarion doesn't trust you enough to answer questions.
|returnSpeech>[Do something else.]
](elseif: $astarion_mood is "frightened" or $astarion_mood is "tense")[Astarion isn't in a mood to answer questions.
|returnSpeech>[Do something else.]
](else:)[What will you ask?
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $godey_known is true and not ($asked_list contains "skeleton-hallway"))[|skeletonAsk>[Speak: "Skeleton?" //<span class="energy">1</span>//]
](if: $astarion_stories_unlocked is not true)[|storyAsk>[Speak: "Story?" //<span class="energy">1</span>//]
](if: $done_with_tomb is false)[|tombAsk>[Speak: "Tomb?" //<span class="energy">1</span>//]
](if: $done_with_cazador is false)[|cazadorAsk>[Speak: "Cazador?" //<span class="energy">1</span>//]
]|returnSpeech>[Something else.]]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
}]](elseif: $sequence is 1)[
](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[(if: not ($enrichment_list contains "cazador"))[Astarion tenses.
$astarion What about him?](else:)[You consider asking a question about Cazador.]
(if: not ($asked_list contains "who-cazador"))[<span id="who" class="energy-link" data-content="Speak: Who?/Speech/1"></span>
](if: not ($asked_list contains "where-cazador"))[<span id="where" class="energy-link" data-content="Speak: Where?/Speech/1"></span>
](if: not ($asked_list contains "murder-cazador"))[<span id="murder" class="energy-link" data-content="Speak: Murder./Speech/1"></span>
]|return>[Something else.]{
(if: not ($enrichment_list contains "cazador"))[
(set: $enrichment_list to it+"cazador")
<script>updateEmotion("calm",-2);</script>
<script>updateEmotion("happy",-1);</script>
]
}](elseif: $sequence is 5)[(if: $just_said is "who")[(if: $murdered_by_cazador is true)[Astarion squints in your direction.(set: $murdered_by_cazador to false)<script>updateTrust(-2);</script>
$astarion You said you were killed by him.
$astarion If you're going to lie, at least keep your story straight.
](else:)[$astarion He's a monster.
$astarion And I don't want to talk about him.
]|cazadorReturn>[Continue]{
(set: $asked_list to it+"who-cazador")
}](elseif: $just_said is "where")[$astarion Somewhere upstairs, I presume.
$astarion Usually in his study.
|cazadorReturn>[Continue]{
(set: $asked_list to it+"where-cazador")
}](elseif: $just_said is "murder")[Astarion snorts.<script>updateTrust(1);</script>
$astarion A pleasant daydream.(if: $murdered_by_cazador is true)[
He pauses. Then he adds, almost kindly:
$astarion That's not possible.
<span id="someday" class="energy-link" data-content="Speak: Someday./Speech/1"></span>]
|cazadorReturn>[Continue]{
(set: $asked_list to it+"murder-cazador")
}
]{
}](elseif: $sequence is 6)[$astarion Sure.
He says, in the tone of someone who is definitely indulging the murdered ghost.
|cazadorReturn>[Continue]{
}](elseif: $sequence is 7)[(if: not ($enrichment_list contains "tomb"))[$astarion Go ahead. Ask whatever you like.
$astarion I'm something of an expert.](else:)[You consider asking a question about the tomb.]
(if: not ($asked_list contains "whose-tomb"))[<span id="whose" class="energy-link" data-content="Speak: Whose?/Speech/1"></span>
](if: $unlocked_escape_ask is false and not ($asked_list contains "escape-tomb"))[<span id="escape" class="energy-link" data-content="Speak: Escape?/Speech/1"></span>
](if: $unlocked_escape_ask is true and not ($asked_list contains "escape-door"))[<span id="door" class="energy-link" data-content="Speak: Door?/Speech/1"></span>
](if: true is false and $unlocked_escape_ask is true and not ($asked_list contains "escape-secret-passage"))[<span id="secretpassage" class="energy-link" data-content="Speak: Secret passage?/Speech/2"></span>
](if: not ($asked_list contains "sarcophagus-tomb"))[<span id="sarcophagus" class="energy-link" data-content="Speak: Sarcophagus?/Speech/1"></span>
](if: $asked_list contains "sarcophagus-tomb" and not ($asked_list contains "crest-sarcophagus"))[<span id="crest" class="energy-link" data-content="Speak: Crest?/Speech/1"></span>
](if: $asked_list contains "sarcophagus-tomb" and not ($asked_list contains "open-sarcophagus"))[<span id="open" class="energy-link" data-content="Speak: Open sarcophagus?/Speech/3"></span>
](if: $asked_list contains "sarcophagus-tomb" and $seen_treasure is true and not ($asked_list contains "treasure-inside-sarcophagus"))[<span id="treasure" class="energy-link" data-content="Speak: Treasure inside sarcophagus./Speech/3"></span>
]|return>[Something else.]{
(if: not ($enrichment_list contains "tomb"))[
(set: $enrichment_list to it+"tomb")
(set: $vampire_enrichment_score to it+1)
<script>updateEmotion("calm",3);</script>
]
}](elseif: $sequence is 8)[(if: $just_said is "whose")[$astarion This would be the tomb of Edwina, Francis, Merricort and Tannis Halchair.
$astarion Also Tulisa Provoss and Amelia Verden.
$astarion The cremation urns had labels. I used to read them before I broke them all.
$astarion Also whoever is in there.
He gestures to the sarcophagus.{
(set: $asked_list to it+"whose-tomb")
(set: $vampire_enrichment_score to it+2)
<script>updateEmotion("calm",4);</script>
}](elseif: $just_said is "escape")[(if: $day > 162)[$astarion Yes. Fine. I suppose we're doing that now.(set: $unlocked_escape_ask to true)(set: $asked_list to it+"escape-tomb")
$astarion What about it?{
(set: $vampire_enrichment_score to it+2)
}](elseif: $what_is_player is "dream" and $astarion_trust > 5)[Astarion starts to shake his head, but then hesitates.(set: $unlocked_escape_ask to true)(set: $asked_list to it+"escape-tomb")
$astarion If this is a dream then...
He still sounds skeptical.
$astarion Well. I suppose it doesn't hurt to talk about it.{
(set: $vampire_enrichment_score to it+2)
}](elseif: $astarion_trust > 9)[Astarion starts to shake his head, but then stops.(set: $unlocked_escape_ask to true)(set: $asked_list to it+"escape-tomb")
$astarion It's pointless. I'd just end up back in here. Or worse.
$astarion But if it would please you to play pretend, fine.{
(set: $vampire_enrichment_score to it+2)
}](elseif: $asked_list contains "escape-asked-once")[Astarion closes his eyes and shakes his head.
$astarion Stop that.{
}](else:)[Astarion closes his eyes and shakes his head.
$astarion There's no point in that.{
}]{
(set: $asked_list to it+"escape-asked-once")
<script>updateEmotion("calm",2);</script>
}](elseif: $just_said is "door")[$astarion If it were locked that would be one thing.
$astarion But it's barred from the outside.{
(set: $asked_list to it+"escape-door")
(set: $vampire_enrichment_score to it+2)
<script>updateEmotion("calm",3);</script>
}](elseif: $just_said is "crest")[$astarion That's the Halchair family crest. They were an old patriar family who died out a century ago. They specialized in jewelry making.
$astarion The Ravenshade patriars ruined them and took over their businesses and properties.
$astarion There are books about them upstairs.{
(set: $asked_list to it+"crest-sarcophagus")
(set: $vampire_enrichment_score to it+3)
<script>updateEmotion("calm",3);</script>
}](elseif: $just_said is "treasure")[$astarion Is there?
He looks over at the sarcophagus speculatively.
$astarion Good to know.{
(set: $asked_list to it+"treasure-inside-sarcophagus")
(set: $astarion_working_on to "sarcophagus")
(set: $astarion_sarcophagus_work to true)
(set: $vampire_enrichment_score to it+5)
<script>updateEmotion("happy",2);</script>
<script>updateEmotion("calm",3);</script>
}](elseif: $just_said is "open")[$astarion The crest does have 'puzzle' energy, doesn't it?
$astarion It's broken, though. You can push most of the filigree like buttons, but one section doesn't work.
$astarion I would need tools to get into it.(if: $astarion_hands is not "healed")[
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He mutters under his breath:
$astarion_name And working hands.](else:)[He mutters something to himself. <span class="italicEmph">//Requires Sight: 3//</span>]]{
(set: $asked_list to it+"open-sarcophagus")
(set: $vampire_enrichment_score to it+2)
<script>updateEmotion("calm",3);</script>
}](elseif: $just_said is "secretpassage")[(set: $sequence to 9)(go-to: $currentPassage)
](elseif: $just_said is "sarcophagus")[(set: $sequence to 10)(go-to: $currentPassage)
]
|tombReturn>[Continue]{
}](elseif: $sequence is 9)[$astarion I have been here for months. I have pushed and pulled on literally everything in this room.
He sounds indignant. But then he sighs.
$astarion But if you want to reprise something, fine. I may be able to find the time.
//You can now ask Astarion to explore the room.//
|returnSpeech>[Continue]{
(set: $asked_list to it+"escape-secret-passage")
(set: $astarion_will_explore to true)
(set: $vampire_enrichment_score to it+2)
<script>updateEmotion("calm",3);</script>
}](elseif: $sequence is 10)[$astarion Things could always be worse.
$astarion I could be inside of it.
$astarion What about it?
|tombReturn>[Continue]{
(set: $asked_list to it+"sarcophagus-tomb")
(set: $vampire_enrichment_score to it+3)
<script>updateEmotion("calm",3);</script>
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[(if: $astarion_trust < 6)[$astarion No. Given how you've behaved lately, I'm not inclined to follow your whims.
$astarion If you want to be indulged, be more likeable.
|returnBase>[Continue]{
}](elseif: $astarion_explored is true)[$astarion No. I have a firm policy of not indulging you pointlessly more than once a day.
|returnBase>[Continue]{
}](else:)[(if: $explore_count < 5)[$astarion Yes, you want to explore.
$astarion How exciting.
$astarion Where?
](elseif: $explore_count is 5)[$astarion I think you just like ordering me around the room.
](elseif: $explore_count > 5)[(set: $rand to (random: 1, 6))(if: $rand is 1)[$astarion I think you just like ordering me around the room.
](elseif: $rand is 2)[$astarion Yes. Let's. Because the room is definitely going to be different today.
](elseif: $rand is 3)[$astarion What a wonderful idea. I did so miss that other dusty corner.
](elseif: $rand is 4)[$astarion Shall we?
](elseif: $rand is 5)[$astarion Very well. Where?
](elseif: $rand is 6)[$astarion Where to, my ephemeral little dictator?
]
]<span id="niches" class="energy-link" data-content="Speak: Niches./Speech/1"></span>
<span id="door" class="energy-link" data-content="Speak: Door./Speech/1"></span>
<span id="sarcophagus" class="energy-link" data-content="Speak: Sarcophagus./Speech/1"></span>
|returnBase>[Something else.]{
}]](elseif: $sequence is 13)[(if: $just_said is "niches")[Astarion moves over the funeral niches.
He glances through them and around them. Then settles on the floor in front of them.
|returnSpeech>[Continue]
(set: $astarion_location to "niches")
](elseif: $just_said is "door")[Astarion moves over to the large stone door.
He makes a cursory examination of it and the surrounding area before settling down beside ones of the columns.
|returnSpeech>[Continue]
(set: $astarion_location to "door")
](elseif: $just_said is "sarcophagus")[Astarion moves over the sarcophagus in the center of the room.
(if: $sarcophagus_open is true)[He glances inside, as if checking that the mummified corpse is still where it ought to be.](else:)[He circles around it, examining the decorations, and vaguely shoves the lid, just in case it had magically come loose.] Then he sits down, leaning against it.
|returnSpeech>[Continue]
(set: $astarion_location to "sarcophagus")
]{
(set: $astarion_explored to true)
(set: $vampire_enrichment_score to it+5)
<script>updateEmotion("calm",5);</script>
(set: $explore_count to it+1)
<script>addAchieve("Point And Click");</script>
}](elseif: $sequence is 14)[
](elseif: $sequence is 15)[$astarion That would be Godey.
$astarion One of the only advantages to being in here is that there's a door between me and him.
(if: $player_term is "ghost")[$astarion You're a ghost, aren't you? Why don't you go haunt him. There's a good specter.](else:)[$astarion You're at least ghost-adjacent, aren't you? Why don't you go haunt him.]
|return>[Continue]{
(if: not ($asked_list contains "skeleton-hallway"))[(set: $asked_list to it+"skeleton-hallway")]
(set: $vampire_enrichment_score to it+2)
}](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[
]{
(click: ?returnSpeech)[(set: $sequence to 0)(go-to: "Speech")]
(click: ?cazadorAsk)[(set: $sequence to 4)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?cazadorReturn)[(if: $done_with_cazador is true)[(set: $sequence to 0)](else:)[(set: $sequence to 4)](go-to: $currentPassage)]
(click: ?tombAsk)[(set: $sequence to 7)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?tombReturn)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?lootAsk)[(set: $sequence to 14)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?skeletonAsk)[(set: $sequence to 15)(display: "reduce energy interaction")(go-to: $currentPassage)]
(click: ?storyAsk)[(set: $sequence to 0)(set: $basePassage to $currentPassage)(display: "reduce energy interaction")(go-to: "Speech Story")]
}(if: $fuck_off_count < 2)[Astarion flinches away from the sudden contact.
$astarion Warn me before doing that.
$astarion I had no idea you were there.
|returnTouch>[Continue]{
(set: $calm_value to 0)
(set: $curious_value to 0)
(set: $happy_value to 0)
(set: $fuck_off_count to it+1)
(set: $fuck_off_forgiveness to 5)
}](elseif: $fuck_off_count is 2)[Astarion flinches away from the sudden contact and snarls at you.
$astarion WARN me before doing that.
|returnTouch>[Continue]{
(display: "set mood tense")
(set: $fuck_off_count to it+1)
(set: $fuck_off_forgiveness to 5)
}](elseif: $fuck_off_count is 3)[$astarion_name Get the FUCK away from me.
You feel a rush of movement as you're hurled away.
Up. Out of the room. Out of the dream.
|forestEnd>[Continue]
]{
(click: ?returnTouch)[(set: $sequence to 0)(go-to: "Touch")]
(set: $astarion_interacted to true)
}(if: $touch_warning is 0)[$astarion Stop that.
(display: "Overstep Reason")
|returnTouch>[Continue]
{
(set: $touch_warning to 1)
}](elseif: $touch_warning is 1)[$astarion Stop that.
(display: "Overstep Reason")
|returnTouch>[Continue]
{
(set: $touch_warning to 2)
}](elseif: $touch_warning is 2)[$astarion I recall telling you to stop that.
(display: "Overstep Reason")
|returnTouch>[Continue]
{
(set: $touch_warning to 3)
}](elseif: $fuck_off_count is 0)[Astarion smiles in a way that is not happy, but bares his fangs.
$astarion Stop. Doing. That.
|returnTouch>[Continue]{
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
(set: $fuck_off_count to it+1)
(set: $fuck_off_forgiveness to 5)
}](elseif: $fuck_off_count is 1)[Astarion smiles in a way that is not happy, but bares his fangs.
$astarion If you keep getting handsy we're going to have a problem.
|returnTouch>[Continue]{
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
(set: $fuck_off_count to it+1)
(set: $fuck_off_forgiveness to 5)
}](elseif: $fuck_off_count is 2)[A growling noise comes from low in Astarion's throat.
$astarion Last warning. Keep your ephemeral fingers to yourself.
|returnTouch>[Continue]{
(display: "set mood tense")
(set: $fuck_off_count to it+1)
(set: $fuck_off_forgiveness to 5)
}](elseif: $fuck_off_count is 3)[$astarion_name Get the FUCK away from me.
You feel a rush of movement as you're hurled away.
Up. Out of the room. Out of the dream.
|forestEnd>[Continue]
]{
(click: ?returnTouch)[(set: $sequence to 0)(go-to: "Touch")]
}(if: $sequence is 0)[You are standing in a long stone hallway.
The door behind you is sealed with a heavy wooden bar.(if: $stone_door_oiled is false)[ (if: $class is "rogue" or $sight > 2)[Its hinges are hideously rusty.](else:)[
//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]]
The walls are lined with spikes.(if: $hallway_spike_state is "broken")[ One has been broken.](if: $godey_state is "paranoid")[
A skeleton in armor is stalking up and down the hall.(set: $godey_known to true)](elseif: $godey_state is "dead")[
There's a pile of bones and armor on the floor.](if: $blood_state is "hallway")[
There is a small bottle of blood on the ground.](if: $ash_trail_state is "to hall")[
A faint trail of ashes leads away from the door.]
(if: $godey_state is "paranoid")[|skeleton>[Examine skeleton.]
](if: $tried_hallway_alone is not true)[|next>[Go down the hall.]
](if: $tried_unbar is not true)[|skip>[Unbar the door.]
](if: $hallway_spike_examined is not true)[|examineSpike>[Examine spikes.]
](elseif: $hallway_spike_state is not "broken")[<span id="break" class="energy-link" data-content="Break spike./Touch/3/3/1"></span>
](if: $stone_door_oiled is false)[(if: $class is "rogue" or $sight > 2)[(if: $player_inventory contains 'oil')[<span id="oil" class="energy-link" data-content="Oil hinges./Touch/3/9/3"></span>](else:)[|gray3>[Oil hinges.] (click: ?gray3)[//You have nothing that could do that.//]]
]]|returnTomb>[Go back inside.]{
}](elseif: $sequence is 1)[You get maybe two meters away from the crypt door, and then your vision starts to blur.
The world around you begins to feel murky and indistinct. Watery. You feel like if you wandered too far into it, you'd get lost. Or drown.
You back up, returning to the stone door. The feeling fades.
It seems you can't wander too far from the dreamer.
|return>[Continue]{
(set: $tried_hallway_alone to true)
}](elseif: $sequence is 2)[The bar is huge, spanning the entire door. It's made of heavy, dark wood.
There is no way you'll be able to move it. Not as a barely-present shadow. It looks so heavy, you're not even sure Astarion could lift it by himself.
(display: "Door Thoughts")
|return>[Do something else.]{
(set: $tried_unbar to true)
}](elseif: $sequence is 3)[(if: $godey_state is "paranoid")[With some effort you twist the tip of one of the elaborate wall-spikes out of alignment. The skeleton notices this on his next pass.
(if: $godey_spike_count is 0)[He mutters irritably.
](elseif: $godey_spike_count is 1)[He curses intensely.
](elseif: $godey_spike_count is 2)[He does an angry little clattering dance of frustration.
](elseif: $godey_spike_count is 3)[He starts cursing and shouting and railing about how he will find haunted thumbscrews that work on ghosts.
]He fixes the spike, undoing all your work.(if: $godey_spike_count is 3)[ Then he stomps off down the hall in a frustrated snit.{
(set: $godey_state to "passive")
(set: $godey_tantrum to it+1)
(if: $active_event is "empty")[
(set: $enrichment_list to it+"godey tantrum")
(set: $vampire_enrichment_score to it+8)
(if: $godey_tantrum_heard is not true)[
(set: $godey_tantrum_heard to true)
(set: $active_event to "astarion godey response")
(set: $event_is_stale to false)
<script>updateEmotion("happy",10);</script>]
(else:)[
<script>updateEmotion("happy",5);</script>
]
]
}]
|return>[Continue]{
(set: $godey_spike_count to it+1)
(set: $hallway_spike_state to "broken temp")
}](else:)[With some effort you twist the tip of one of the elaborate wall-spikes out of alignment.
|return>[Continue]{
(set: $hallway_spike_state to "broken")
}]](elseif: $sequence is 4)[Spikes protrude from the stone walls of the hallway at regular intervals, a little above chest height. They are made of iron and sculpted with decorative barbs.
Many of them are crusted over with blood. There is a corpse impaled on one, a little down the hall.
The spike right next to the tomb door looks like it might be a little loose.
<span id="break" class="energy-link" data-content="Break spike./Touch/3/3/1"></span>
|return>[Something else.]{
(set: $hallway_spike_examined to true)
}](elseif: $sequence is 5)[A skeleton in rusty metal armor stalks up and down the hall.
Sometimes he stops in front of the stone, tomb door and peers suspiciously at one of the spikes.
He mutters to himself about naughty children.
(if: $class is "fighter")[<span id="hitHard" class="energy-link" data-content="[FIGHTER] Hit him./Touch/6/+1/3"></span>
](elseif: $class is "monk")[<span id="hitHard" class="energy-link" data-content="[MONK] Hit him./Touch/6/+1/3"></span>
](elseif: $class is "barbarian")[<span id="hitHard" class="energy-link" data-content="[BARBARIAN] Hit him./Touch/6/+1/3"></span>
](else:)[<span id="hit" class="energy-link" data-content="Hit him./Touch/6/+1/3"></span>
]<span id="steal" class="energy-link" data-content="Steal from him./Touch/5/+1/0"></span>
<span id="push" class="energy-link" data-content="Push him./Touch/3"></span>
|return>[Something else.]{
}](elseif: $sequence is 6)[(if: $just_said is "push")[You shove the skeleton as hard as you can.
He's taken completely by surprise, teetering and almost falling. He catches himself clankingly against the wall.
|next>[Continue]
](elseif: $just_said is "hitHard")[You punch the skeleton as hard as you can.
The only un-armored part is the face, so you aim for that.
You snap his lower jaw clean off.
|next>[Continue]
](elseif: $just_said is "hit")[You punch the skeleton as hard as you can.
He's armored, and made of bone, so you don't do much damage. You do surprise him, though.
|next>[Continue]
](elseif: $just_said is "steal")[There are two objects hanging off of the skeleton's belt.
A pair of pliers and a flask of oil.
You could grab one, but he would surely notice and stop you getting the other.
<span id="pliers" class="energy-link" data-content="Grab the pliers./Touch/5/10/1"></span>
<span id="oil" class="energy-link" data-content="Grab the oil./Touch/5/10/1"></span>
(if: $class is "rogue")[<span id="both" class="energy-link" data-content="[ROGUE] Steal both./Touch/5/10/1"></span>
]|prev>[Something else.]
](elseif: $just_said is "kill")[You yank the skeleton's helmet off and use it to bludgeon his skull into bonemeal.
That was extremely satisfying.
|next>[Loot the corpse.]{
(set: $godey_state to "dead")
}]](elseif: $sequence is 7)[(if: $just_said is "push" or $just_said is "hit")[$godey Haunted, is it?
$godey Go away, ghostie. Don't bother Godey.
$godey Go bother the little one in the cell. He screams nicely.
The skeleton walks off down the hall.
|return>[Continue]{
(set: $godey_state to "passive")
}](elseif: $just_said is "hitHard")[The skeleton tries to speak, but it comes out garbled and disjointed.
He staggers away, down the hall.
You don't think he'll be back anytime soon.
|return>[Continue]{
(set: $godey_state to "afraid")
<script>addAchieve("Beat Up Godey");</script>
}](elseif: $just_said is "kill")[The sword and armor are tragically too heavy for you to carry.
But you find a pair of pliers and a flask of oil on the body. You can manage those.
<span class="emph">//Took pliers.//</span>
<span class="emph">//Took oil.//</span>
|return>[Continue]{
(set: $player_inventory to it + (a: 'oil'))
(set: $objects_taken to it + (a: 'oil'))
(set: $player_inventory to it + (a: 'pliers'))
(set: $objects_taken to it + (a: 'pliers'))
}]](elseif: $sequence is 8)[(if: $just_said is "push")[$godey And stop your fiddling with the spikes.
$godey Or Godey will have to come back.
$godey Trouble enough with the dead things upstairs.
The skeleton walks off down the hall.
|return>[Continue]{
}]](elseif: $sequence is 9)[It's an awkward, splashy job and you need to use all of the oil in the flask.
But now the door should open quietly.
If it ever opens.
|return>[Continue]{
(set: $stone_door_oiled to true)
(set: $player_inventory to it - (a: 'oil'))
}](elseif: $sequence is 10)[You grab the (if: $just_said is "pliers")[pliers](elseif: $just_said is "oil")[oil](elseif: $just_said is "both")[pliers and the oil] away from the skeleton.
$godey Ach! Haunted.
$godey Naughty ghosties. Don't you trouble Godey. I get enough trouble from the dead with flesh.
He retreats down the hall, away from you.
You don't think he'll be back anytime soon.
(if: $just_said is "pliers")[<span class="emph">//Took pliers.//</span>(set: $player_inventory to it + (a: 'pliers'))(set: $objects_taken to it + (a: 'pliers'))
](elseif: $just_said is "oil")[<span class="emph">//Took oil.//</span> (set: $player_inventory to it + (a: 'oil'))(set: $objects_taken to it + (a: 'oil'))
](elseif: $just_said is "both")[<span class="emph">//Took pliers.//</span>(set: $player_inventory to it + (a: 'pliers'))(set: $objects_taken to it + (a: 'pliers'))
<span class="emph">//Took oil.//</span>(set: $player_inventory to it + (a: 'oil'))(set: $objects_taken to it + (a: 'oil'))
]
|return>[Continue]{
(set: $godey_state to "stolen from")
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?examineSpike)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?skeleton)[(set: $sequence to 5)(go-to: $currentPassage)]
(set: $been_to_hallway to true)
(if: $hallway_spike_state is "broken")[<script>changeBackground("hallwaySpikeBroken");</script>]
(elseif: $hallway_spike_state is "broken temp")[<script>changeBackground("hallwaySpikeBroken");</script> (set: $hallway_spike_state to "intact")]
(else:)[<script>changeBackground("hallwaySpike");</script>]
}{(if: $overstep_reason is "frightened")[//Astarion doesn't trust you enough to do this while frightened.//
](elseif: $overstep_reason is "tense")[//Astarion doesn't trust you enough to do this while tense.//
](elseif: $overstep_reason is "low trust")[//Astarion doesn't trust you enough.//
](elseif: $overstep_reason is "low touch")[//How much Astarion trusts you and how comfortable he is with touch are differet metrics.
You have one, but not the other.//
]}{
(set: $health to $health + $health_change)
(if: $health > $maxHealth)[(set: $health to $maxHealth)]
(if: $health < 0)[(set: $health to 0)]
(if: $health < 1)[(set: $die_next_screen to true)]
(if: $health_change > 0)[<script>playAudio("aa_tap2");</script>](else:)[<script>playAudio("aa_damage");</script>]
}(if: $sequence is 0)[The mouse has gray-brown fur.
It is occupied with investigating a small pile of rubble.
<span id="scare" class="energy-link" data-content="Scare mouse towards Astarion./Touch/0/1"></span>
|findAstarion>[Tell Astarion about it.]
(if: $class is "druid")[<span id="druid" class="energy-link" data-content="[DRUID] Animal Handle mouse towards Astarion./Touch/0/2"></span>
](if: $class is "ranger")[<span id="ranger" class="energy-link" data-content="[RANGER] Animal Handle mouse towards Astarion./Touch/0/2"></span>
](if: $class is "monk")[<span id="monk" class="energy-link" data-content="[MONK] Kill mouse./Touch/2/3"></span>
](elseif: $class is "fighter")[<span id="monk" class="energy-link" data-content="[FIGHTER] Kill mouse./Touch/3/3"></span>
](elseif: $class is "barbarian")[<span id="monk" class="energy-link" data-content="[BARBARIAN] Kill mouse./Touch/3/3"></span>
](elseif: $class is "paladin")[<span id="monk" class="energy-link" data-content="[PALADIN] Kill mouse./Touch/3/3"></span>
](else:)[<span id="kill" class="energy-link" data-content="Kill mouse./Touch/6/4"></span>
]|returnBase>[Something else.]{
}](elseif: $sequence is 1)[You try to make noise to scare the mouse towards where Astarion is.
The mouse responds to the disturbance by vanishing into a crack in the wall.
Well. So much for that.
|returnBase>[Continue]{
(set: $active_event to "empty")
(set: $mouse_location to "")
}](elseif: $sequence is 2)[You make gentle, coaxing, mouse sounds.
You build a rapport with the mouse.
You lead your new mouse companion over to the hungry vampire.
|eatMouse>[Continue]{
}](elseif: $sequence is 3)[You can't summon much force, but it's a mouse.
And you're good at killing things.
There's only a little blood, but enough to bring the vampire over.
|eatMouse>[Continue]{
}](elseif: $sequence is 4)[The hard part would have been sneaking up on the mouse. Fortunately, you're invisible.
And intangible, up until you decide not to be.
There's only a little blood, but enough to bring the vampire over.
|eatMouse>[Continue]{
}](elseif: $sequence is 5)[Astarion's entire body tenses like a spring coiling. His eyes dilate.
$astarion Where?
(if: $mouse_location is "niches")[<span id="one" class="energy-link" data-content="Speak: Niches./Speech/2"></span>
<span id="two" class="energy-link" data-content="Speak: Left niche./Speech/3"></span>
<span id="three" class="energy-link" data-content="Speak: Below leftmost niche./Speech/4"></span>
](else:)[<span id="one" class="energy-link" data-content="Speak: Sarcophagus./Speech/2"></span>
<span id="two" class="energy-link" data-content="Speak: Sarcophagus corner./Speech/3"></span>
<span id="three" class="energy-link" data-content="Speak: Sarcophagus leftmost corner./Speech/4"></span>
]|next>[Say nothing.]{
(set: $hunt_score to 0)
(set: $just_said to "")
(set: $astarion_interacted to true)
}](elseif: $sequence is 6)[(if: $just_said is "")[When you don't respond after a few moments, Astarion gets up and starts hunting around.](else:)[Astarion gets up and creeps in that direction.]
He moves slowly and is not as coordinated as he usually is.
The problem with being desperately hungry is it makes you worse at the work you must do to satisfy hunger.
|next>[Continue]{
(if: $just_said is "")[(set: $hunt_score to it+0)
](elseif: $just_said is "one")[(set: $hunt_score to it+3)
](elseif: $just_said is "two")[(set: $hunt_score to it+5)
](elseif: $just_said is "three")[(set: $hunt_score to it+8)]
}](elseif: $sequence is 7)[(if: $just_said is "" or $just_said is "one")[It takes Astarion a few moments to spot the gray mouse in the gray dust.
By the time he does, it's stood up on its hind paws. Suspicious and alert.](elseif: $just_said is "two" or $just_said is "three")[Astarion finds the mouse quickly.
It's not aware of him yet.]
<span id="push" class="energy-link" data-content="Push the mouse towards him./Touch/3"></span>
<span id="pin" class="energy-link" data-content="Push the mouse towards the ground./Touch/3"></span>
|next>[Just watch.]{
(set: $just_said to "")
}](elseif: $sequence is 8)[(if: $just_said is "push")[Interfering in this way ends up doing more harm than good. It alerts the mouse to danger before Astarion was ready to snatch at it.(set: $hunt_score to it-3)
(if: $hunt_score > 4)[But he manages to grab it anyway.](else:)[The mouse slips through his fingers and away into a crack in the wall.]
](elseif: $just_said is "pin")[You push the mouse down, pinning it to the ground.(set: $hunt_score to it+5)
You can only do it for a moment, but that's enough. Astarion snatches it up.
](elseif: $hunt_score > 4)[Astarion moves slowly until suddenly he's darting quick.
He snatches up the mouse before it notices him.
](else:)[He almost gets it. He's very quick.
But not as coordinated as he usually is. And his hands are hurt.
The mouse slips through his fingers and away into a crack in the wall.
]
(if: $hunt_score > 4)[|skip>[Continue]](else:)[|next>[Continue]]{
}](elseif: $sequence is 9)[$astarion Damn.
He sits in the dust for a little while.
$astarion Damn it.
Eventually he drags himself back to the corner, behind the column by the door.
|returnTomb>[Continue]{
(set: $astarion_location to "door")
(set: $astarion_refuse_interaction to true)
(set: $astarion_mood to "bored")
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
(set: $active_event to "empty")
(set: $mouse_location to "")
}](elseif: $sequence is 10)[Astarion snatches up the mouse and pops the entire thing into his mouth.
There is a quiet crunching noise.
And after a few seconds, the wounds on his hands start to heal.
|findAstarion>[Continue]
{
(set: $astarion_interacted to true)
(set: $astarion_hands to "healed")
(set: $astarion_day_activity to "fur")
<script>updateEmotion("happy",10);</script>
(set: $astarion_location to $mouse_location)
(set: $active_event to "empty")
(set: $mouse_location to "astarion")
<script>updateTrust(1);</script>
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?eatMouse)[(set: $sequence to 10)(go-to: $currentPassage)]
}(if: $sequence is 0)[(if: $sight > 3)[It's made of shadow, like you are. A darker shadow among shadows.
But you can track it easily by its mouth full of moon-white teeth. It also has long, black, twig-like fingers that drift searchingly through the air.
It's moving like it can't see, but is feeling through the space with its fingers and teeth.
Right now it's searching around the $teeth_location.(if: $teeth_hit_count > 0)[
It's looking for you. It has the taste of you.]
](elseif: $sight > 1)[You can vaguely make it out. It's mostly teeth.
It's moving slowly. Mouth opening and closing. Like it's tasting the air. Like it can't see, but it's feeling around for something to dig its teeth into.
Right now it's searching around the $teeth_location.(if: $teeth_hit_count > 0)[
It's looking for you. It has the taste of you.]
](else:)[That's kind of the most awful thing.
You can't really see it. You can't tell exactly where it is.
You just know that there's something dreadful.
And it's somewhere in this room.
]
(if: $astarion_nightmare_told is "")[|findAstarion>[Warn Astarion.]
](if: $sight > 1)[<span id="push" class="energy-link" data-content="Push it./Touch/3/2"></span>
<span id="hit" class="energy-link" data-content="Hit it./Touch/6/3"></span>
(if: $class is "paladin")[<span id="smite" class="energy-link" data-content="[PALADIN] Smite it./Touch/3/5"></span>
]|next>[Talk to it.]
]|returnTomb>[Get away.]{
}](elseif: $sequence is 1)[There is a voice like spiders skittering through your mind.
$sigh Not now.
$sigh Hunting.
$sigh Perhaps later.
|return>[Continue]{
}](elseif: $sequence is 2)[(if: $teeth_hit_count > 0)[You try to push the teeth away.
It turns towards you with hungry excitement.
|nightmareAttack>[Continue]{
(set: $teeth_hit_count to 2)
}](else:)[You try to push the teeth away. Out of the room. To another part of the tomb.
They snap closed around your arm.
<span class='energy'>//Lost 3 Energy//</span>(set: $energy_change to -3)(display: "update energy silent")
|stagger>[Continue]{
}]](elseif: $sequence is 3)[You lash out at the teeth.
You hit something. There's something there that can be hurt.
Then it turns its attention towards you.
|nightmareAttack>[Continue]{
(set: $teeth_hit_count to it+5)
}](elseif: $sequence is 4)[
](elseif: $sequence is 5)[You haven't been able to use any magic in this place. But your powers are the kind that rise when they are needed.
There is a burst of radiance in the blackness.
Astarion looks up, as if he thought he'd just noticed something, but isn't sure.
(if: $sight > 3)[The long, twig-like fingers twitch. ]The teeth clack together. They turn towards you.
|next>[Continue]{
(set: $teeth_hit_count to it+10)
}](elseif: $sequence is 6)[$sigh Ah. You are that sort.
$sigh What a pretty candle you are.
$sigh How much darker you make my shadows seem.
|next>[Continue]{
}](elseif: $sequence is 7)[$sigh But you are not asking for conversation.
$sigh Very well.
$sigh My turn.
|nightmareAttack>[Continue]{
}](elseif: $sequence is 8)[{
(set: $player_hurt to 10-$energy)
(if: $player_hurt > 5)[(set: $player_hurt to 5)]
}The teeth are very sharp.
<span class='energy'>//Lost 10 Energy//</span>(set: $energy_change to -10)(display: "update energy silent")
|next>[Continue]{
}](elseif: $sequence is 9)[You stagger back.
You can hear the nightmare chewing on the parts of you it ripped off.
|timePasses>[Collapse]{
}](elseif: $sequence is 10)[You pull away.
You hear the teeth make a contemplative humming noise. As if it had just tasted something it liked.
It starts feeling more deliberately through the space where it encountered you.
|returnTomb>[Continue]{
(set: $teeth_hit_count to it+1)
}](elseif: $sequence is 11)[Astarion is squinting at the space where you are. He actually speaks before you do.
$astarion What's wrong? You're upset.
<span id="move" class="energy-link" data-content="Speak: Move./Speech/2/19"></span>
<span id="push" class="energy-link" data-content="Push him to a different spot./Touch/3/21"></span>
<span id="bastellus" class="energy-link" data-content="Speak: Bastellus./Speech/2/12"></span>
<span id="monster" class="energy-link" data-content="Speak: Monster./Speech/2/13"></span>
<span id="invisible" class="energy-link" data-content="Speak: Invisible monster./Speech/3/13"></span>
(if: $touch is 0)[<span id="annoy" class="energy-link" data-content="Annoy him into moving with incessant whispers./Speech/1/21/5"></span>](else:)[<span id="annoy" class="energy-link" data-content="Annoy him into moving with incessant tapping./Touch/1/21/5"></span>]{
(set: $astarion_interacted to true)
(set: $astarion_nightmare_told to "nothing")
}](elseif: $sequence is 12)[He frowns at the air.
$astarion Did you just sneeze?
<span id="monster" class="energy-link" data-content="Speak: Monster./Speech/2/13"></span>
<span id="invisible" class="energy-link" data-content="Speak: Invisible monster./Speech/3/13"></span>{
}](elseif: $sequence is 13)[Astarion glances warily around the room.
$astarion Where?
(if: $sight > 1)[(if: $teeth_location is "sarcophagus")[<span id="sarcophagus" class="energy-link" data-content="Speak: Sarcophagus./Speech/2"></span>](elseif: $teeth_location is "door")[<span id="door" class="energy-link" data-content="Speak: Door./Speech/2"></span>](else:)[<span id="niches" class="energy-link" data-content="Speak: Niches./Speech/2"></span>]
]<span id="dunno" class="energy-link" data-content="Speak: Don't know./Speech/2/13"></span>
|next>[Say nothing.]{
(set: $bastellus_info to $just_said)
(set: $astarion_nightmare_told to $just_said)
(set: $just_said to "nothing")
(display: "set mood frightened")
}](elseif: $sequence is 14)[(if: $just_said is "nothing")[$astarion Amazing.
$astarion I love ominous warnings.
|astarionHides>[Continue]{
}](elseif: $just_said is "dunno")[$astarion Well, that's terrifying and unhelpful.
$astarion What am I supposed to do?
<span id="hide" class="energy-link" data-content="Speak: Hide./Speech/2"></span>
<span id="low" class="energy-link" data-content="Speak: Stay low./Speech/2"></span>
|next>[Say nothing.]{
(set: $just_said to "nothing")
(display: "set mood frightened")
}](elseif: $bastellus_info is "monster")[$astarion So you can see it?
$astarion Because I can't.
|astarionMoves>[Continue]{
}](elseif: $bastellus_info is "invisible")[$astarion Fine. Invisible monster by the $teeth_location.
$astarion Just. Wonderful.
|astarionMoves>[Continue]{
}]](elseif: $sequence is 15)[(if: $just_said is "hide" or $just_said is "low")[$astarion Fine. I can do that.
|astarionHides>[Continue]{
(set: $astarion_response to "hiding")
}](elseif: $just_said is "nothing")[Astarion waits for you to respond, and when you don't he hisses.
$astarion Some help you are.
|astarionFinal>[Continue]{
(set: $astarion_response to "hiding")
}]](elseif: $sequence is 16)[(if: $astarion_trust < 10)[$astarion If this is some kind of prank I'm going to...
He trails off. Not coming up with any effective threats.
$astarion Be very put out.
|astarionFinal>[Continue]{
}](else:)[You think the conversation's over. But then Astarion asks:
$astarion Are you...
$astarion Can it hurt you?
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2"></span>
<span id="no" class="energy-link" data-content="Speak: No./Speech/2"></span>
<span id="dunno" class="energy-link" data-content="Speak: Don't know./Speech/3"></span>
|next>[Say nothing.]{
(set: $just_said to "nothing")
}]](elseif: $sequence is 17)[(if: $just_said is "no")[$astarion All right.
$astarion Good.
|astarionFinal>[Continue]{
(display: "set mood tense")
}](elseif: $just_said is "yes")[$astarion Oh.
There is a pause.
$astarion Well.
$astarion Be careful.
|astarionFinal>[Continue]{
}](elseif: $just_said is "dunno")[$astarion If you aren't sure whether a mysterious thing in a tomb can hurt you, just go ahead and assume it can.
There is a pause.
$astarion Be careful.
|astarionFinal>[Continue]{
}](elseif: $just_said is "nothing")[$astarion I presume from your ominous silence that the answer is 'yes'.
$astarion Well.
$astarion Be careful.
|astarionFinal>[Continue]{
}]](elseif: $sequence is 18)[(if: $astarion_response is "hiding")[Astarion moves to hide entirely behind the column by the door.
|returnTomb>[Continue]
{
(set: $astarion_location to "door")
(set: $astarion_hiding to true)
}](elseif: $astarion_response is "moving")[(display: "cycle astarion location")Astarion creeps carefully over to the $astarion_location, putting as much distance as he can between himself and the $teeth_location.
|returnTomb>[Continue]{
}]](elseif: $sequence is 19)[Astarion frowns suspiciously.
$astarion Why?
<span id="please" class="energy-link" data-content="Speak: Please./Speech/2/20"></span>
<span id="bastellus" class="energy-link" data-content="Speak: Bastellus./Speech/2/12"></span>
<span id="monster" class="energy-link" data-content="Speak: Monster./Speech/2/13"></span>
<span id="justMove" class="energy-link" data-content="Speak: Just move./Speech/3/20"></span>
<span id="invisible" class="energy-link" data-content="Speak: Invisible monster./Speech/3/13"></span>{
}](elseif: $sequence is 20)[(if: $just_said is "please" and $astarion_trust > 7)[(set: $sequence to 21)(set: $just_said to "move")(go-to: $currentPassage)
](elseif: $just_said is "justMove" and $astarion_trust > 10)[(set: $sequence to 21)(set: $just_said to "move")(go-to: $currentPassage)
](else:)[$astarion No.
$astarion What's going on?
<span id="bastellus" class="energy-link" data-content="Speak: Bastellus./Speech/2/12"></span>
<span id="monster" class="energy-link" data-content="Speak: Monster./Speech/2/13"></span>
<span id="invisible" class="energy-link" data-content="Speak: Invisible monster./Speech/3/13"></span>{
}]](elseif: $sequence is 21)[(if: $just_said is "annoy")[(display: "cycle astarion location")You make an absolute nuisance of yourself and harass Astarion until he stalks away, over to the $astarion_location.
Hopefully that helped?
|returnTomb>[Continue]{
<script>updateTrust(-2);</script>
(display: "set mood tense")
(set: $astarion_refuse_interaction to true)
<script>addAchieve("Irksome Practicality");</script>
}](elseif: $just_said is "push")[(if: $touch_trust < 2)[Astarion does not appreciate being pushed. You have not cultivated the sort of relationship where you can just click on him and tell him to go places.
But you're insistent about it so eventually he does move.<script>updateTrust(-1);</script>(display: "set mood tense")
](else:)[$astarion You're very insistent today.
$astarion Fine. Where do you want me to go?
](if: $sight > 1)[//The nightmare is floating near the $teeth_location.//](else:)[//You can't tell where the nightmare is.//]
|niches>[Push Astarion towards the niches.]
|door>[Push Astarion towards the door.]
|sarcophagus>[Push Astarion towards the sarcophagus.]{
}](elseif: $just_said is "move")[Astarion seems like he's about to push the issue, but then he sighs.
$astarion Fine. Where do you want me to go?
(if: $sight > 1)[//The nightmare is floating near the $teeth_location.//](else:)[//You can't tell where the nightmare is.//]
<span id="niches" class="energy-link" data-content="Speak: Niches./Speech/2"></span>
<span id="door" class="energy-link" data-content="Speak: Door./Speech/2"></span>
<span id="sarcophagus" class="energy-link" data-content="Speak: Sarcophagus./Speech/2"></span>{
}]{
(click: ?niches)[(set: $sequence to it+1)(set: $just_said to "niches")(go-to: $currentPassage)]
(click: ?door)[(set: $sequence to it+1)(set: $just_said to "door")(go-to: $currentPassage)]
(click: ?sarcophagus)[(set: $sequence to it+1)(set: $just_said to "sarcophagus")(go-to: $currentPassage)]
}](elseif: $sequence is 22)[Astarion moves over to the $just_said.
|returnTomb>[Continue]{
(set: $astarion_location to $just_said)
}](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[
]{
(click: ?nightmareAttack)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?stagger)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?astarionMoves)[(set: $sequence to 16)(set: $astarion_response to "moving")(go-to: $currentPassage)]
(click: ?astarionHides)[(set: $sequence to 16)(set: $astarion_response to "hiding")(go-to: $currentPassage)]
(click: ?astarionFinal)[(set: $sequence to 18)(go-to: $currentPassage)]
}{
(if: $astarion_location is "sarcophagus")[(set: $astarion_location to "door")]
(elseif: $astarion_location is "door")[(set: $astarion_location to "niches")]
(elseif: $astarion_location is "niches")[(set: $astarion_location to "sarcophagus")]
}(if: $sequence is 0)[$astarion Where are you? Are you there?
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
](elseif: $speech > 0)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2"></span>
<span id="here" class="energy-link" data-content="Speak: I'm here./Speech/3"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1"></span>
|next>[Do nothing.]{
(set: $just_said to "nothing")
(set: $active_event to "empty")
}](elseif: $sequence is 1)[(if: $just_said is "nothing")[Astarion keeps looking for you for a while.
When you don't appear, he curls in on himself.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He mutters to himself under his breath--
$astarion Stop being pathetic.](else:)[He mutters something harsh under his breath. <span class="italicEmph">//Requires Sight: 3//</span>]
|returnTomb>[Continue]{
(set: $astarion_refuse_interaction to true)
<script>updateTrust(-2);</script>
}](else:)[$astarion You're there.
$astarion Good.
$astarion Don't leave.
$astarion Please don't leave.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
](elseif: $speech > 0)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
]<span id="wont" class="energy-link" data-content="Speak: Won`t./Speech/2"></span>
<span id="cant" class="energy-link" data-content="Speak: Can`t./Speech/2"></span>
<span id="sleep" class="energy-link" data-content="Speak: Need sleep./Speech/3"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1"></span>
|next>[Do nothing.]{
(set: $just_said to "nothing")
(set: $astarion_interacted to true)
}]](elseif: $sequence is 2)[(if: $just_said is "cant")[$astarion Can't?
$astarion I suppose I should have guessed that.
$astarion Who would stay here if they could leave?
<span id="cant" class="energy-link" data-content="Continue/Speech/0"></span>{
}](elseif: $just_said is "sleep")[$astarion Sleep. Is that what you're doing when you're gone?
$astarion Does a $player_term need sleep?
$astarion Fine.
$astarion Just come back.
|refresh>[Continue]{
(set: $just_said to "")
<script>addAchieve("Ghosts Need Sleep");</script>
}](else:)[$astarion I don't care if you're real.
$astarion I don't care if I'm mad.
$astarion Don't leave me.
(if: $speech is 0 and $touch > 0)[<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
](elseif: $speech > 0)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
](if: $class is "bard")[<span id="whistle" class="energy-link" data-content="[BARD] Whistle a song./Speech/3"></span>
]<span id="touch" class="energy-link" data-content="Hold his hand until you can`t anymore./Touch/1/+1/all"></span>
<span id="hug" class="energy-link" data-content="Hug him./Touch/4"></span>
<span id="sorry" class="energy-link" data-content="Speak: Sorry I`m incorporeal./Speech/4"></span>{
(if: $just_said is not "nothing")[<script>updateTrust(1);</script>]
}]](elseif: $sequence is 3)[(if: $just_said is "cant")[$astarion At least there's company.
|findAstarion>[Continue]{
}](elseif: $just_said is "whistle")[Astarion leans back against the wall, closes his eyes, and listens to you.
|findAstarion>[Continue]{
<script>updateTrust(1);</script>
<script>updateEmotion("calm",10);</script>
<script>updateEmotion("happy",5);</script>
}](elseif: $just_said is "touch")[(if: $touch > 1)[You sit in the dark holding hands until you run out of energy and drift into nothingness.](else:)[You sit in the dark touching the back of his hand until you run out of energy and drift into nothingness.]
|findAstarion>[Continue]{
<script>updateTrust(2);</script>
<script>updateEmotion("calm",10);</script>
}](elseif: $just_said is "sorry")[Astarion snorts.
$astarion It's always amusing when you throw out ten copper words between the yeses and noes.
$astarion What a thing to apologize for.
|findAstarion>[Continue]{
<script>updateTrust(1);</script>
<script>updateEmotion("calm",10);</script>
}](elseif: $just_said is "hug")[(if: $successful_hug is 0)[Astarion gasps and tenses.<script>addAchieve("Get Safe And Cared For Idiot");</script>
That seems like a bad sign, so you start to draw back. But he reaches towards you. Through you.
$astarion Hells. No. Don't stop.
So you keep hugging him for as long as you can sustain contact. He's shaking a little.](elseif: $successful_hug is 1)[Astarion shudders.
While you hold him, he makes a few noises like he's stopping himself from crying.
Eventually he calms down.](else:)[Astarion's hands move like he's trying to figure out how to return the motion, but there's no clear way to do that.]
|findAstarion>[Continue]{
(if: $touch_trust < 3)[(set: $touch_trust to 3)]
<script>updateTrust(2);</script>
(set: $successful_hug to it+1)
<script>updateEmotion("happy",10);</script>
}](else:)[$astarion Right.
$astarion That's fine.
$astarion That's enough.
$astarion It's better than silence.
|findAstarion>[Continue]{
<script>updateEmotion("calm",10);</script>
}]](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[$astarion There you are.
$astarion Hello.
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> He sounds vaguely awkward. Possibly embarrassed?](else:)[There's nuance here beyond your perception. <span class="italicEmph">//Requires Sight: 2//</span>]
|next>[Continue]{
(set: $astarion_interacted to true)
(set: $active_event to "empty")
(set: $vampire_enrichment_score to it+3)
(set: $refused_name_count to 0)
}](elseif: $sequence is 1)[$astarion I may have been a touch rude.
$astarion And I realize I should ask.
$astarion Do you have a name?
|next>[Continue]{
}](elseif: $sequence is 2)[This expression of identity is effortless. It will take no energy.(if: $speech is 0)[ You can do it even though you have no Speech.]
What do you tell him?
<input type="text" id="playerNameInput" name="fname" value="Tav">
|sayName>[Use this name.]
{
(click: ?sayName)[
(set: $sequence to it+1)
<script>
var player_name = $("#playerNameInput").val();
seth("player_name",player_name);
</script>
(go-to: $currentPassage)
]
}](elseif: $sequence is 3)[{
(set: $allow_name to false)
(set: $companion_names_male to (a: "Gale", "Wyll"))
(set: $companion_names_female to (a: "Lae'zel", "Karlach", "Shadowheart"))
(set: $actor_names to (a: "Amelia", "Devora", "Jennifer", "Neil", "Tim", "Theo", "Samantha", "Emma", "Dave", "Tracy", "Matt"))
(set: $generic_no_tadpole to (a: "Volo", "Alfira", "Jaheira", "Dammon", "Rolan", "Zevlor", "Barcus", "Mol", "Dame Aylin", "Aylin", "Isobel", "Aurelia", "Dalyria", "Sebastian", "Petras", "Leon", "Violet", "Yousen", "Blurg", "Emmeline", "Nine-Fingers", "Keene", "Nine-Fingers Keene", "Hope"))
(set: $generic_nope to (a: "Haarlep", "Korrilla", "Ketheric", "Orin", "Gortash", "Sarevok", "Godey"))
(set: $generic_weird to (a: "Withers", "Omeluum", "Orpheus"))
(set: $god_names to (a: "Shar", "Mystra", "Lolth"))
}(if: $companion_names_male contains $player_name)[You can't be $player_name. He's very busy right now.
](elseif: $companion_names_female contains $player_name)[You can't be $player_name. She's very busy right now.
](elseif: $generic_no_tadpole contains $player_name)[You can't be $player_name. They don't have a tadpole.
](elseif: $generic_nope contains $player_name)[Ha. Nope.
](elseif: $god_names contains $player_name)[Ambitious. No.
](elseif: $player_name is "Elminster")[You can't be $player_name. They don't have a tadpole.
Also there's no cheese here.
](elseif: $player_name is "Halsin")[He would very much like to help. But unfortunately, he doesn't have a tadpole. You can't be Halsin.
](elseif: $player_name is "Drizzt")[He would definitely help if he could, and Astarion would probably have a lot of excited questions. But unfortunately, he doesn't have a tadpole. You can't be Drizzt Do'Urden.
](elseif: $player_name is "Scratch")[Scratch is a very, very good boy who does not have a tadpole and is also a dog. You can't be Scratch.
](elseif: $player_name is "Raphael")[Have fun reading Palmarosa, but that makes no sense in this context. You can't be Raphael.
](elseif: $player_name is "Minsc")[Boo says that's a bad idea. You can't be Minsc.
](elseif: $player_name is "Sceleritas Fel")[No. No, I'm not letting you do that.
](elseif: $player_name is "Mizora")[Ha! No.
](elseif: $player_name is "Sigh")[That's dark. I kind of like it. But it doesn't fit with the premise. You can't be Sigh.
](elseif: $player_name is "Astarion")[I think you may be confused.
](elseif: $player_name is "Drizzt")[That would be very exciting, but he doesn't have a tadpole. You can't be Drizzt.
](elseif: $player_name is "")[
](elseif: $player_name is "")[
](elseif: $player_name is "")[
](elseif: $player_name is "Minthara")[This would be so out of character for her. You can't be Minthara.{
}](else:)[(if: $achievement_tav_names contains $player_name)[That's significant.
](elseif: $actor_names contains $player_name)[I thought I recognized your voice.
](elseif: $generic_weird contains $player_name)[Weird flex, but I can see it being possible.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Boo")[...<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
Well, if it makes you happy.
](elseif: $player_name is "Emperor" or $player_name is "The Emperor")[Sure, I guess.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Pidge")[You just came up with that on the spot, didn't you?<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Chara")[The true name.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Cazador")[That's going to have consequences. But I'll let you do it.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
]You are naming yourself (print: $player_name).(set: $allow_name to true)
Is that right?]
(if: $allow_name is false)[|prev>[Try again.]
](else:)[|next>[Yes.]
|prev>[No.]
]{
(if: $allow_name is false)[(set: $refused_name_count to it+1)]
(if: $refused_name_count > 4)[<script>addAchieve("No You Can't Be Scratch");</script>]
}](elseif: $sequence is 4)[(if: $player_name is "Cazador")[Astarion makes a strangled noise.
Something hits you. Not something physical. A refusal. An implicit rejection. A convulsion of the mind you're in.
You feel a rush of movement as you're hurled away.
Up. Out of the room. Out of the dream.
|forestEnd>[Continue]{
}](elseif: $achievement_tav_names contains $player_name and $astarion_trust > 9)[(if: $player_name is "Aldiirn")[$astarion You. There was a time. A night.
$astarion You were ill. Or panicking? Panicking ill. You needed help.
$astarion And for some bizarre reason you decided to <a href="https://bg3.mrcrowb.art/comic/1331" target="_blank">come to me.</a>
$astarion Your choices are bewildering.
He sounds a little pleased by them, though.
](elseif: $player_name is "AldiirnOld")[$astarion <a href="https://www.tumblr.com/mistercrowbar/701999282759303168/where-in-the-web-is-mr-crowbar?source=share" target="_blank">You.</a>
Astarion sounds a bit jangled.
$astarion I killed you.
And then hesitant.
$astarion And you...forgave me?
](elseif: $player_name is "Aliizi")[$astarion You're here?
$astarion It feels a bit odd, that you're willing to do this.
$astarion Are you even here for me?
](elseif: $player_name is "Anastavia")[$astarion There's a game.
He says like he's just vaguely remembering it.
$astarion Brandy for Gale. Blackstaff wine for Volo. Vinegar for Withers.
$astarion <a href="https://archiveofourown.org/works/51061948/chapters/129009463" target="_blank">There's a story.</a>
$astarion You and your games and your stories and your extremely stupid looking hat.
He likes the hat, though. He enjoys making fun of it.
](elseif: $player_name is "Andar")[$astarion You.
$astarion You grim, scarred, gentle thing.
$astarion You don't laugh very often.
$astarion I can make you laugh.
](elseif: $player_name is "Astor")[$astarion I...
$astarion I am suddenly a touch concerned.
$astarion That you are not going to be very good at minding your own physical well-being.
$astarion Please also take care of yourself.
](elseif: $player_name is "Echo")[$astarion I know you.
$astarion You're the monster who likes sunrises.
$astarion Ha.
$astarion Look at me--a pot talking to a kettle.
](elseif: $player_name is "Ember")[$astarion Rosewater and rosin. And something else.
$astarion You whistler.
$astarion <a href="https://www.tumblr.com/catsharky/731549538679209984/my-tavs-moral-compass-is-straight-and" target="_blank">You scavenger.</a>
That last word is said with a kind of affect-less fondness that seems very out of place in this space.
](elseif: $player_name is "Finch")[$astarion Finch?
$astarion Like the tiny bird?
Astarion considers this uncertainly for a moment.
$astarion That feels <a href="https://www.tumblr.com/everchased/738924530595217409/so-astarion-and-finch-which-one-of-them-watches?source=share" target="_blank">somehow inappripriate.</a>
](elseif: $player_name is "Francys")[$astarion Rings.
$astarion Something about rings.
$astarion <a href="https://archiveofourown.org/works/53200003/chapters/134616919" target="_blank">And sunlight.</a>
](elseif: $player_name is "Greygold")[$astarion Wait. Did you...?
He continues incredulously, working through the oddity of it.
$astarion You <a href="https://www.tumblr.com/jeeaark/741588536442208256/oh-noooooo-the-broken-little-star-lamp-my-heart?source=share" target="_blank">gave me a lamp.</a>
A pause. And then with more certainty.
$astarion And you make terrible jokes.
](elseif: $player_name is "Myna")[$astarion You. You're...not just one thing.
$astarion You've been small. But also very large. And you...purr?
Then he makes a noise like he's exasperated with himself.
$astarion Oh. Gods. Obviously. I'm being haunted by a druid.
](elseif: $player_name is "Nawen")[Astarion tilts his head to the side. He looks faintly amused, but also as if he isn't certain why he feels that way.
$astarion I rather feel that someone with a name like that <a href="https://ineed-to-sleep.tumblr.com/post/739171377900322816/collection-of-memes-with-mostly-my-tavastarion-to" target="_blank">must be a massive cunt.</a>
](elseif: $player_name is "Ria")[$astarion You're <a href="https://archiveofourown.org/works/52567867" target="_blank">the one with the music box.</a>
He examines the shadows where you are, and then says, very hesitantly:
$astarion My mirror?
](elseif: $player_name is "Staeve")[$astarion Steve?<script>addAchieve("Don't Forget Me");</script>
He hesitates.
$astarion No. Wait. That's not right, is it?
$astarion <a href="https://www.tumblr.com/velnna/736707061297102848?source=share" target="_blank">Staeve.</a>
The pronunciation is the same. But the word is said entirely differently.
](elseif: $player_name is "Tavlen")[$astarion ...this feels a little like that night. You're a silhouette in the dark again.
$astarion Trying so very hard to be good.
$astarion You ridiculous paladin.
](elseif: $player_name is "Veruca")[$astarion A shadow named Veruca.
$astarion I wonder why that feels so appropriate.
](elseif: $player_name is "Wyndolyn")[$astarion ...
$astarion You must miss Karlach.
](elseif: $player_name is "Violetta")[$astarion You're the one that's always ruining your clothes.
$astarion Ruining your clothes...with all sorts of interesting blood and viscera stains.
$astarion Rather a lot of work, but you're always polite about it, so I don't find I mind.
](elseif: $player_name is "Wyndolyn")[$astarion ...
$astarion You must miss Karlach.
](elseif: $player_name is "Zip")[$astarion You. You bitey, compact mote of magic and murder.
$astarion You rip the wings off birds, but then cry over the most insipid people
$astarion You guilty murder weapon with a ridiculous name.
$astarion Gods, I remember. Gods, you're memorable.
](elseif: $player_name is "Zynn")[$astarion ...this is difficult for you isn't it?
$astarion You don't need to...
He trails off for a moment, not sure what to say. He settles on:
$astarion It's enough that you're here.
]|next>[Continue]{
<script>updateTrust(1);</script>
}](else:)[(if: $what_is_player is "ghost")[$astarion Well. $player_name. Welcome to the Szarr Palace.
$astarion Though, I suppose you've been here a long time.
$astarion So. Actually. Nevermind.
$astarion Hello.
](else:)[$astarion Well. $player_name. Welcome to the Szarr Palace. I'm terribly sorry I can't be a better host.
$astarion Though you're better off than most of the guests I bring home.
He laughs like he just made a joke that isn't funny at all.
]|findAstarion>[Continue]{
}]](elseif: $sequence is 5)[He settles back and examines the space in the darkness where he thinks you are.
As if he's caught the thread of something in his mind, and is trying to follow it to more memories.
|findAstarion>[Continue]{
(set: $astarion_mood to "calm")
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[You move over to the huge stone door.
There's something new here.
|next>[Examine it.]{
<script>addAchieve("Message From Another World");</script>
(if: $touch is 0)[<script>addAchieve("I Only Need Words");</script>]
(if: $speech is 0)[<script>addAchieve("I Don't Need Words");</script>]
}](elseif: $sequence is 1)[...
Oh.
He needs to see this.
|next>[Find Astarion.]{
}](elseif: $sequence is 2)[Finding him is easy. It always is, in such a small space.
He notices you even before you do anything. That's becoming a pattern.
$astarion You feel like you're in a bit of a state today. What's going on?
<span id="door1" class="energy-link" data-content="Speak: Door./Speech/2"></span>
<span id="door2" class="energy-link" data-content="Speak: Go door./Speech/3"></span>
<span id="door3" class="energy-link" data-content="Speak: Go door now./Speech/4"></span>
<span id="push" class="energy-link" data-content="Push him over to the door./Touch/3"></span>
(if: $speech < 2)[<span id="whispering" class="energy-link" data-content="Whisper him over to the door./Speech/1/+1/8"></span>
](if: $touch < 0)[<span id="tapping" class="energy-link" data-content="Tap him over to the door./Touch/1/+1/8"></span>
]{
(set: $healthDisplay to true)
(set: $astarion_interacted to true)
}](elseif: $sequence is 3)[(if: $just_said is "whispering" or $just_said is "tapping")[You make an ungodly racket of urgent $just_said.
It's graceless and inefficient and now you're tired.
But you do finally communicate that you want Astarion to come over to the stone doorway.
](elseif: $just_said is "push")[(if: $touch_trust < 2)[Astarion does not appreciate being pushed. You have not cultivated the sort of relationship where you can just click on him and tell him to go places.
But you're insistent about it so eventually he does move.<script>updateTrust(-1);</script>
](else:)[$astarion You're very insistent today.
Astarion tolerates being pushed towards the door.
]](else:)[$astarion Fine. Let's stare at the door again.
$astarion That sounds like a diverting way to spend a Suneday.
He moves to the door.
]|next>[Continue]{
}](elseif: $sequence is 4)[The smooth stone of the doorway has been marred by deep scratches.
Words carved into the rock.
Like an epitaph, but much rougher. And not about death.
|next>[Continue]{
}](elseif: $sequence is 5)[The letters are jagged and disjointed. It's like they were made by different people, all in different ways.
|karlach>[The Ls...](click-replace: ?karlach)[The Ls are simple deep grooves made by someone very strong and very angry.]
|laezel>[The Ws and Ts...](click-replace: ?laezel)[The Ws and Ts are long slashes, tactically shallow so that less raw power was necessary.]
|casters>[The rest of the letters...](click-replace: ?casters)[The rest of the letters are more precise. Marks certainly made by magic, to be this even in stone.
You can distinguish three separate hand-writings. The Es are all written differently.]
|next>[Continue]{
}](elseif: $sequence is 6)[The jumbled message reads:
THERE'S A WAY OUT.
HELP INCOMING.
|next>[Continue]{
}](elseif: $sequence is 7)[
(set: $health_change to 5)(display: "update health")
|next>[End of Act 1.]{
(if: $health > 29 and $touch < 4 and $speech < 4 and $sight < 4)[<script>addAchieve("Oath of Devotion Compassion");</script>]
(if: $interact_every_day is true)[<script>addAchieve("Echoing Words");</script>]
}](elseif: $sequence is 8)[Meanwhile. Outside of the tomb.
There is a forest. And a number of people are very busy.
|intermission>[Begin Intermission]{
(set: $played_first_acts to true)
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?intermission)[(set: $sequence to 0)(go-to: "Campsite Intermission")]
}(if: $sequence is 0)[(if: $enrichment_list contains "story")[$astarion You've already had one today.
$astarion Don't be greedy.
|returnBase>[Continue]
](elseif: $astarion_trust < 7 and $astarion_stories_unlocked is false)[$astarion Are you asking me to tell you a story?
$astarion I don't do that.
|returnBase>[Continue]
](elseif: $story_count is 0)[$astarion Are you asking me to tell you a story?
Astarion sighs.
$astarion I am the only one here who can string full sentences together.
$astarion And I may have read a story or two.
//You can now ask Astarion to tell you stories.//(set: $astarion_stories_unlocked to true)<script>addAchieve("Storytime");</script>
|next>[Continue]
](elseif: $story_count is 13)[$astarion Gods, you're insatiable.
$astarion I'm running out of books.
$astarion I suppose I could make something up.
|skip>[Continue]
](else:)[(set: $sequence to 2)(go-to: $currentPassage)
]](elseif: $sequence is 1)[He hesitates a moment more.
$astarion If there's any heckling, I'm never doing this again.
|next>[Continue]{
}](elseif: $sequence is 2)[(if: $story_count is 0)[Astarion tells you about the history of the Chionthar river.
](elseif: $story_count is 1)[Astarion vaguely outlines the life of John Meadowlin, a werebear cured by a saint of Selûne named Erlona. In gratitude he protected her.
$astarion I am certain it was a headache. Saints tend to be idiots.
](elseif: $story_count is 2)[Astarion outlines tactics for conscripting drow exiles to join what he seems to think is a fictional army that can control people's minds.
This plan includes a scheme for luring a battalion of drow out from Menzoberranzan.
](elseif: $story_count is 3)[Astarion tells you a handful of somewhat disjointed, only possibly true facts about eels.
](elseif: $story_count is 4)[Astarion quotes some descriptions of darkness from a book exalting Shar.
$astarion Cultists do tend to wax unbearably poetic about their gods. But some of it is pretty.
](elseif: $story_count is 5)[Astarion describes the recent history of the Zhentarim, and the mystery of their current leadership--a skull helmed warrior who always wears chalk-white full plate armor.
$astarion Wouldn't it be amusing if he were something absurd? Like a gnome, controlling the armor with levers.
](elseif: $story_count is 6)[Astarion tells you a story that sounds like a fairy tale, about a woman who lost her mother and coped with it by poisoning her village.
](elseif: $story_count is 7)[Astarion describes some interesting flora, native to the Dalelands, including a deadly poison that was terribly powerful but unfortunately painless.
](elseif: $story_count is 8)[Astarion describes Flumph mating rituals in some amusing detail.
](elseif: $story_count is 9)[Astarion describes how to use a forge, buried deep in the Underdark, that can melt and cast adamantine into weapons and armor.
](elseif: $story_count is 10)[Astarion relates the history of the so-called 'Society of Brilliance', an organization that wants to civilize the Underdark. He seems deeply skeptical of the institution.
](elseif: $story_count is 11)[Astarion relates the history of the Flaming Fist--the mercenary police force of Baldur's Gate that has vacillated wildly in function, form and principle.
$astarion Their only consistent feature seems to be their color palette.
](elseif: $story_count is 12)[Astarion describes Avernus, the first layer of the Nine Hells, as he learned about it from a guide book.
$astarion Not a terribly compelling vacation spot, to be quite honest.
](elseif: $story_count is 13)[Astarion pieces together a story about a priestess who loses her memory and gets lost in the woods, but finds her way out by following the moon.
Astarion seems to be under the impression it's of his own invention.<script>addAchieve("Original Characters Do Not Steal");</script>
](elseif: $story_count is 14)[Astarion tells you a story about a tiefling who is sold to Hell and loses her heart, but then climbs out and rebuilds it using scrap metal.
Astarion seems to be under the impression it's of his own invention.
](elseif: $story_count is 15)[Astarion tells you a story about an extremely tiresome warlock who has a devil patron but ironically insists on being noble and always doing the 'right thing'. Whatever that is.
Astarion keeps putting the character in situations where Astarion clearly thinks this tendency should get him killed, and then keeps not quite letting that happen.
Astarion seems to be under the impression this story is of his own invention.
](elseif: $story_count is 16)[Astarion tells you a story about a very clever wizard who makes very foolish decisions and then explodes. He tries to cast it as amusing, but in the end sounds rather regretful about it.
Astarion seems to be under the impression it's of his own invention.
](elseif: $story_count is 17)[Astarion tells you a story about a woman made of steel who rides on dragons and speaks in poetry.
Astarion seems to be under the impression it's of his own invention.
](else:)[Astarion 'makes up' a story that you're fairly certain is based on something that actually, recently happened on your adventure.
]|returnBase>[Continue]{
(set: $story_count to it+1)
(set: $enrichment_list to it+"story")
(set: $vampire_enrichment_score to it+7)
<script>updateEmotion("calm",5);</script>
<script>updateEmotion("happy",2);</script>
}](display: "menu_menu")
(display: "Tell Me About Your Character"){
<style>
tw-story { padding: 10px 15% !important; }
tw-passage { text-align: left; }
tw-passage { background-color: transparent !important; border: none !important; }
</style>
}//Contact Information//
You can talk to me <a target="_blank" href='https://discord.gg/kHgtwqe'>over discord</a> or <a target="_blank" href='https://www.tumblr.com/blog/abigailmoment'>over Tumblr.</a>
//Error Reporting//
This game has gotten quite complicated and I'm sure that there are bugs and inconsistencies I'm not aware of. I need people to try strange things, play the game in different ways, and tell me when things break or don't make sense.
//Feedback I Need//
Act 2 doubles the amount of time you spend in the tomb. This means I need to re-balance a lot of things.
How difficult is it to gain Trust?
How difficult is it to max out skills? By the end of the act, do you still feel like your priorities mattered?
How difficult is it to restore Astarion's health?
Do you and Astarion have enough time to accomplish the three projects that can be done?x(display: "menu_menu")
{(if: $artist is "ducancela")[<div id="titleBox">
<img class="artDisplayBox" src="./silenceImages/ducancela-pic.jpg" alt="A Dream of Silence">
</div>
](elseif: $artist is "milton")[<div id="titleBox">
<img class="artDisplayBox" src="./silenceImages/milton-pic.png" alt="A Dream of Silence">
</div>
](elseif: $artist is "cymk8")[<div id="titleBox">
<img class="artDisplayBox" src="./silenceImages/cymk8_pic.png" alt="A Dream of Silence">
</div>
]}
|menu_credits>[< Go Back]{
<style>
.artDisplayBox{
width: 900px;
}
</style>
}(if: $karlach_helped is not true and $day is 172)[|karlachShimmer>[Something <span class="text-shimmer-long text-shimmer-karlach">gleams in the air.</span>]
|timePasses>[Rest.]
<span class="explain">//This will make time pass. There's currently another choice.//</span>
](else:)[|timePasses>[Rest.]
<span class="explain">//This will make time pass. Time is not kind, but you don't have a choice.//</span>
](if: $class is "cleric")[|noResponse>[`[CLERIC]` Pray before resting.]
](if: $class is "paladin")[|noResponse>[`[PALADIN]` Pray before resting.]
]{
(click-replace: ?noResponse)[(set: $player_prayer_count to it+1)(if: $player_prayer_count < 5)[There is no response.](elseif: $player_prayer_count < 9)[That doesn't seem to work here.](elseif: $player_prayer_count is 9)[You realize that your prayers will not be answered here, and you decide that you understand why.
You are the solution to this situation. Your prayers are not being answered because you are already here.
The thought centers you.<script>addAchieve("None Of Them Answered");</script>](else:)[It centers you.]]
(click: ?karlachShimmer)[(set: $sequence to 5)(go-to: "The Tomb")]
}{
(display: "Text Colors")
}(if: $sequence is 0)[Gale is working.
As are the others. He is peripherally aware of their activities.
|next>[Continue]
|goToTomb>[Skip intermission.]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
(set: $wyllExpositionDone to false)
(set: $galeExpositionDone to false)
<script>changeBackground("");</script>
(set: $healthDisplay to false)
(set: $learnDisplay to false)
(set: $energyDisplay to false)
}](elseif: $sequence is 1)[|exp1>[Wyll](click: ?exp1)[ spent the last hour consulting with Gale about magical theory and possible spells that might help. Then he left to try and ask Mizora for advice. Which feels like an apt metric for how dire things are.]
|exp2>[Shadowheart](click: ?exp2)[ cast every healing spell she had on the bodies, to little effect, then retreated to her tent. She is still visibly shaken from her dream. She is having some difficulty walking.]
|exp3>[Lae'zel](click: ?exp3)[ splits her time between standing outside Shadowheart's tent, glowering at anyone who approaches, and standing by Gale, glowering at him as if that might somehow make him work faster.]
|exp4>[Karlach](click: ?exp4)[ keeps bringing people snacks and making them drink water. She can make toast with melted cheese using only her bare hands, which is not very sanitary but is food. She finds blankets and spreads them over the bodies.]
|next>[Continue]
](elseif: $sequence is 2)[Astarion has somehow become even paler over the course of the last hour. It feels like that shouldn't be possible, but there it is. The skin around his eyes has sunken and he looks considerably more corpse-like.
$player_name is also visibly weakening, though not as rapidly.
|next>[Continue]{
(set: $gale_spell to "")
(set: $gale_spells to " ")
}](elseif: $sequence is 3)[{
(if: $gale_spells is "")[(set: $gale_spells to " ")]
(set: $gale_spells to it+$gale_spell)
}(if: $gale_spell is "Speak With Dead")[The spell 'Speak With Dead' is not the clever shortcut to communicating with Astarion that Gale hoped it might be.
](elseif: $gale_spell is "Remove Curse")[The spell 'Remove Curse' is not powerful enough, or perhaps not relevant enough, to cure the condition.
](elseif: $gale_spell is "Protection from Evil and Good")[The spell 'Protection from Evil and Good' does not seem to have any effect. The access that the Bastellus has must circumvent the spell's ability to safeguard its subjects.
](elseif: $gale_spell is "Detect Thoughts")[The spell 'Detect Thoughts' comes up disturbingly blank.
](else:)[Gale experiments with a number of spells.
]
(if: not ($gale_spells contains "Speak With Dead"))[|castSpeak>[Cast 'Speak With Dead.']
](if: not ($gale_spells contains "Remove Curse"))[|castCurse>[Cast 'Remove Curse.']
](if: not ($gale_spells contains "Protection from Evil and Good"))[|castProtect>[Cast 'Protection from Evil and Good.']
](if: not ($gale_spells contains "Detect Thoughts"))[|castDetect>[Cast 'Detect Thoughts.']
]|next>[Experiment with the tadpole connection.]{
(click: ?castSpeak)[(set: $gale_spell to "Speak With Dead")(go-to: $currentPassage)]
(click: ?castCurse)[(set: $gale_spell to "Remove Curse")(go-to: $currentPassage)]
(click: ?castProtect)[(set: $gale_spell to "Protection from Evil and Good")(go-to: $currentPassage)]
(click: ?castDetect)[(set: $gale_spell to "Detect Thoughts")(go-to: $currentPassage)]
}](elseif: $sequence is 4)[Attempting to make contact through the tadpole is a dangerous prospect. The first time Gale tried he'd almost...fallen in? It had been a very strange sensation.
A more tentative approach gives him glimpses of another place. A dark, stone room. A crypt of some kind.
And beyond that room, a dungeon, and then a manor. A dark palace dreamscape.
The stone room at the center is like a trap inside of a larger trap.
|next>[Continue]{
}](elseif: $sequence is 5)[Wyll arrives, looking angry and tired. As he often does after conversations with his patron devil.
Karlach arrives with another toasted cheese sandwitch.
|next>[$gale That's...terribly kind of you, Karlach.]
|next>[$gale Ah. Thank you, but I'm quite full after the last one.]{
}](elseif: $sequence is 6)[$karlach So what do we know about the Bababa?
$gale It is actually pronounced Bastellus.
$karlach It's eating my friends. If it wants me to fuss about saying its name right, it's gotta stop eating my friends.
$gale A fair point. A reasonable requirement.
|wyllExposition>[$gale I am interested in learning what Wyll discovered from his patron.]
|galeExposition>[$wyll I don't supposed there's any magic that could help us in this, Gale?]
](elseif: $sequence is 7)[$wyll Mizora has never encountered one of these creatures before.
$wyll However. She knows about...building personal hells for people.
$wyll According to her, there has to be a way out.
$wyll Something about how true suffering requires the presence of hope.
|next>[$gale Charming. Did she have any insight on how we might discover such an escape route?]
|next>[$karlach That's fucking horrible but good I guess? How do we find it?]{
(set: $wyllExpositionDone to true)
}](elseif: $sequence is 8)[$wyll We can't.
$wyll Only the people inside will be able to find their way to it.
$wyll It will be somewhere meaningful. Somewhere that feels right. That feels like freedom.
$wyll Given that, I think we can safely assume it's somewhere outside that room they're trapped in.
|next>[$karlach Huh. What did Mizora want for telling you all that?]
(if: $galeExpositionDone is false)[|galeExposition>[$wyll I don't supposed there's any magic that could help us in this, Gale?]
](if: $wyllExpositionDone is true and $galeExpositionDone is true)[|summary>[$karlach Let me see if I've got this straight.]
]{
}](elseif: $sequence is 9)[$wyll Let's not talk about that.
$wyll Let's focus on the task at hand.
(if: $galeExpositionDone is false)[|galeExposition>[$wyll I don't supposed there's any magic that could help us in this, Gale?]
](if: $wyllExpositionDone is true and $galeExpositionDone is true)[|summary>[$karlach Let me see if I've got this straight.]
]{
}](elseif: $sequence is 10)[$gale There is a spell called Dream.
$gale It's one of those specialized magics that's not generally relevant right up until the point when it's absolutely essential.
$gale I unfortunately don't have the spell itself, but I have a book on the theory behind it.
|next>[$karlach Yeah you do.]
|next>[$wyll Naturally.]{
(set: $galeExpositionDone to true)
}](elseif: $sequence is 11)[$gale I believe we could approximate a poor-man's version of Dream using spell theory and the tadpoles.
$gale We shan't want to actually manifest ourselves within the dream, or we would end up in the same lamentable situation as $player_name.
$gale But we could attempt to alter the landscape. Manifest objects and images.
$gale It would be a difficult, effortful thing. Though easier if we try to project objects for which we have a physical reference.
(if: $wyllExpositionDone is false)[|wyllExposition>[$gale I am interested in learning what Wyll discovered from his patron.]
](if: $wyllExpositionDone is true and $galeExpositionDone is true)[|summary>[$karlach Let me see if I've got this straight.]
]{
}](elseif: $sequence is 12)[$karlach There's a way out, but they've got to find it themselves.
$karlach It's gotta be outside of that room, so we gotta get them out of that room.
$karlach We can't go in ourselves.
$karlach But we can like, give them presents.
|next>[$gale That is an apt summary.]{
}](elseif: $sequence is 13)[$gale I have a thought on how to solve the door issue.
$karlach Is it magic?
$gale Yes. A version of a spell we regularly use. Though it needs to be more potent, so it may take some time to prepare.
$karlach Sweet. I've got a present idea too.
$wyll We can change things? Change the landscape, you said?
$gale Yes. That may be more difficult. But possible.
$wyll I have an idea for what we should do first.
|goToTomb>[End Intermission]{
}
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?wyllExposition)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?galeExposition)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?summary)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?goToTomb)[(set: $sequence to 0)(go-to: "Act 2")]
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
}
(if: $sequence is 0)[This may feel like an escape-the-room game.
It is not. It is an endure-the-room game.
You may not have as much power as you're used to, and you won't be able to do everything you want. But the small things you can do are significant.
Are you ready to endure and be helpful in small ways?
|begin>[Yes.]
|next>[I would prefer to play a game where things happen quickly and I can be powerful.]
](elseif: $sequence is 1)[That's very reasonable. I'm glad you know what you want.
Here. <a href="https://baldursgate3.game/" target="_blank">This is a good game where you can do that.</a>
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?begin)[
<script>
seth("AgreementMade",true);
savePermSettings();
</script>
(set: $sequence to 0)
(go-to: "Menu")
]
(set: $no_menu to true)
}<span class="actText">Act 2</span>
“
Shall I enter the dreams of your foes and feed upon them, mistress?
”
— Sigh
(if: $sight > 2)[//Something has changed near the sarcophagus.//](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]
|findAstarion>[Return to the tomb.]
{
(set: $drawAction to "erase")
(display: "decorate campsite")
(set: $in_intro to false)
(display: "Act 2 Variables")
(set: $Quickstart to true)
<script>savePermSettings();</script>
(click: ?enterTomb)[(go-to: "The Tomb")]
}{
(set: $day to 151)
(set: $active_event to "none")
(set: $event_is_stale to false)
(set: $event_forced to false)
(set: $in_act3 to false)
(if: $difficulty is "explorer")[(set: $health to 47)]
(else:)[(set: $health to 37)]
(set: $maxHealth to 52)
(set: $energy to 10)
(set: $maxEnergy to 10)
(set: $currentLearning to 0)
(set: $maxLearning to 2)
(set: $neglect_health_penalty to 0)
(set: $consecutive_interactions to 0)
(set: $enemyHealthDisplay to false)
(set: $enemyHealth to 10)
(set: $enemyMaxHealth to 10)
(set: $enemyName to "Vengeful Ghost")
(set: $enemyNameText to "ghost")
(set: $enemyLevel to "7")
(if: $quickstarting is true)[
(set: $canPracticeSight to true)
(set: $canPracticeSpeech to true)
(set: $canPracticeTouch to true)
](else:)[
(set: $canPracticeSight to false)
(set: $canPracticeSpeech to false)
(set: $canPracticeTouch to false)
]
(set: $sight to 0)
(set: $speech to 0)
(set: $touch to 0)
(set: $firstPriority to "")
(set: $secondPriority to "")
(set: $sightLearning to 0)
(set: $speechLearning to 0)
(set: $touchLearning to 0)
(set: $first_contact to " ")
(set: $astarion_trust to 5)
(set: $vampire_enrichment_score to 0)
(set: $enrichment_list to "base")
(set: $done_once_list to "base")
(set: $chat_list to "base")
(set: $asked_list to "base")
(set: $curious_value to 0)
(set: $calm_value to 0)
(set: $happy_value to 0)
(set: $interaction_to_trust to 0)
(set: $touch_warning to 0)
(set: $fuck_off_count to 0)
(set: $fuck_off_forgiveness to 0)
(set: $morning_joke_count to 0)
(set: $story_count to 0)
(set: $explore_count to 0)
(set: $touch_trust to 0)
(set: $touch_threshold_count to 0)
(set: $astarion_interacted to false)
(set: $astarion_greeted to false)
(set: $astarion_howareyou to false)
(set: $astarion_explored to false)
(set: $astarion_refuse_interaction to false)
(set: $astarion_hiding to false)
(set: $astarion_goodbye to false)
(set: $astarion_nightmare_told to "")
(set: $astarion_mood to "bored")
(set: $astarion_yesterday_mood to "bored")
(set: $astarion_location to "sarcophagus")
(set: $astarion_activity to "empty")
(set: $astarion_play_activity to "empty")
(set: $astarion_day_activity to "empty")
(set: $astarion_hands to "hurt")
(set: $astarion_cleanliness to "dusty")
(set: $astarion_play_count to 10)
(set: $astarion_learned_dream to 0)
(set: $tried_hallway_alone to false)
(set: $tried_unbar to false)
(set: $hallway_spike_examined to false)
(set: $hallway_spike_state to "intact")
(set: $stone_door_oiled to false)
(set: $godey_state to "passive")
(set: $godey_tantrum to 0)
(set: $godey_known to false)
(set: $godey_tantrum_heard to false)
(set: $teeth_location to "door")
(set: $teeth_leaving to false)
(set: $teeth_hit_count to 0)
(set: $player_inventory to (a:))
(set: $astarion_inventory to (a:))
(set: $objects_taken to (a:))
(set: $astarion_seen to false)
(set: $astarion_heard to false)
(set: $whistling to false)
(set: $hand_held to false)
(set: $whisper_count to 0)
(set: $whisper_to_calm to 0)
(set: $touch_count to 0)
(set: $speech_revealed to false)
(set: $player_killed_by to "")
(set: $what_is_player to "")
(set: $player_term to "ghost")
(set: $player_name to "Tav")
(set: $player_dark_urge to false)
(set: $player_hurt to 0)
(set: $player_prayer_count to 0)
(set: $murdered_by_cazador to false)
(set: $unlocked_escape_ask to false)
(set: $done_with_cazador to false)
(set: $done_with_tomb to false)
(set: $astarion_will_explore to false)
(set: $astarion_stories_unlocked to false)
(set: $astarion_not_a_cat to false)
(set: $seen_treasure to false)
(set: $successful_head_pat to 0)
(set: $successful_hug to 0)
(set: $astarion_working_on to "")
(set: $astarion_sarcophagus_work to false)
(set: $sarcophagus_crest_work to 0)
(set: $sarcophagus_open to false)
(set: $astarion_brick_finished to false)
(set: $astarion_brick_work to 0)
(set: $astarion_alchemy_finished to false)
(set: $astarion_alchemy_work to 0)
(set: $currentArea to "Tomb")
(set: $interact_every_day to true)
(set: $achievement_tav_names to (a: "Aldiirn", "Aliizi", "Anastavia", "Andar", "Astor", "Echo", "Ember", "Finch", "Francys", "Greygold", "Myna", "Nawen", "Ria", "Staeve", "Tavlen", "Veruca", "Violetta", "Wyndolyn", "Zip", "Zynn"))
}{
(if: $act2_quickstart is true)[(display: "Act 2 Quickstart")]
(set: $astarion_location to "watching door")
(set: $astarion_mood to "excited")
(set: $active_event to "astarion message")
(set: $message_state to "carved")
(set: $player to "<span style='color: #ebe8cd;'>"+$player_name+":</span> ")
(set: $clive_state to "present")
(set: $knife_state to "absent")
(set: $knife_nature to "dagger")
(set: $blood_state to "absent")
(set: $blood_drank to false)
(set: $blood_intensity to 0)
(set: $toolkit_state to "absent")
(set: $amber_state to "absent")
(set: $potion_state to "absent")
(set: $scroll_state to "absent")
(set: $scroll_total_energy to 20)
(set: $sigh_location to "absent")
(set: $sigh_visits to "unasked")
(set: $sigh_trust to 0)
(set: $sigh_annoyed to 0)
(set: $sigh_chat_list to "base")
(set: $sigh_pet_name to "morsel")
(set: $sigh_proposal to "unmade")
(if: $class is "paladin" or $player_name is "Greygold")[(set: $sigh_pet_name to "candle")]
(set: $sigh_greeted to false)
(set: $sigh_stories_unlocked to false)
(set: $sigh_story_told to false)
(set: $sigh_story_count to 0)
(set: $sigh_advice_unlocked to false)
(set: $sigh_advice_given to false)
(set: $sigh_advice_count to 0)
(set: $sigh_interaction_count to 0)
(set: $sigh_solitude_count to -1)
(set: $ochre_state to "absent")
(set: $ochre_plan_asked to false)
(set: $ash_trail_state to "absent")
(set: $ochre_hit_count to 0)
(set: $ochre_shout_count to 0)
(set: $cold_state to "absent")
(set: $cold_astarion_state to "fine")
(set: $know_ghost_not_player to false)
(set: $astarion_grappled to false)
(set: $karlach_helped to false)
}{
(display: "Act 1 Variables")
(set: $day to 163)
(set: $energy to 10)
(set: $event_is_stale to false)
(set: $event_forced to false)
(if: $difficulty is "explorer")[(set: $health to 25)]
(else:)[(set: $health to 15)]
(set: $sight to 2)
(set: $speech to 3)
(set: $touch to 1)
(set: $firstPriority to "Speech")
(set: $secondPriority to "Sight")
(set: $maxEnergy to 10)
(set: $astarion_trust to 10)
(set: $touch_trust to 2)
(set: $what_is_player to "ghost")
(set: $player_term to "ghost")
(set: $player_name to "Tav")
}{
(set: $astarion_name to "<span style='color: #ebe8cd;'>Astarion:</span> ")
(set: $astarion to "<span style='color: #ebe8cd;'>Astarion:</span> ")
(set: $karlach to "<span style='color: #c58b8b;'>Karlach:</span> ")
(set: $gale to "<span style='color: #d8abf9;'>Gale:</span> ")
(set: $laezel to "<span style='color: #b9ddc8;'>Lae'zel:</span> ")
(set: $wyll to "<span style='color: #babfff;'>Wyll:</span> ")
(set: $shadowheart to "<span style='color: #6c7895;'>Shadowheart:</span> ")
(set: $godey to "<span style='color: #ebe8cd;'>Godey:</span> ")
(set: $sigh to "<span style='color: #919191;'>Nightmare:</span> ")
(set: $maybeSigh to "<span style='color: #919191;'>???:</span> ")
(set: $violet to "<span style='color: #d8abf9;'>Violet:</span> ")
(set: $aurelia to "<span style='color: #c58b8b;'>Aurelia:</span> ")
(set: $petras to "<span style='color: #b9ddc8;'>Petras:</span> ")
(set: $dalyria to "<span style='color: pink;'>Dalyria:</span> ")
(set: $dal to "<span style='color: pink;'>Dalyria:</span> ")
(set: $leon to "<span style='color: #babfff;'>Leon:</span> ")
(set: $yousen to "<span style='color: #6c7895;'>Yousen:</span> ")
(set: $victoria to "<span style='color: #ebe8cd;'>Victoria:</span> ")
}(if: $sequence is 0)[Astarion seems aware of you, even before you take action. He gestures to the message on the door.
$astarion What is this?
(if: $speech < 2)[$astarion What did...damn it.
$astarion How the Hells am I suppose to do this with yes and no questions.
$astarion Does this have something to do with you? Do you know what did this?](else:)[$astarion What did this?]
(if: $speech < 2)[<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
](else:)[<span id="companions" class="energy-link" data-content="Speak: Companions./Speech/2"></span>
<span id="friends" class="energy-link" data-content="Speak: Friends./Speech/2"></span>
<span id="allies" class="energy-link" data-content="Speak: Allies./Speech/2"></span>
<span id="ourFriends" class="energy-link" data-content="Speak: Our friends./Speech/3"></span>
<span id="wyll" class="energy-link" data-content="Speak: Probably Wyll./Speech/3"></span>]{
(set: $astarion_interacted to true)
(set: $active_event to "empty")
(set: $vampire_enrichment_score to it+3)
(set: $just_said to "")
}](elseif: $sequence is 1)[(if: $just_said is "companions" or $just_said is "allies")[$astarion I don't seem to recall having any of those.
He rubs his face.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> $astarion But I have recently had cause to doubt my senses.](else:)[//He mutters something under his breath. <span class="softEmph">Requires: Sight 3</span>//]
](elseif: $just_said is "friends" or $just_said is "ourFriends")[$astarion I don't have...
He cuts himself off. Sighs.
$astarion Fine.
](elseif: $astarion_learned_dream > 0 and $just_said is "wyll")[Astarion's brow creases, as if he's working with difficulty to remember something.
$astarion Yes. That does seem...
$astarion Insufferably appropriate.
](elseif: $just_said is "wyll")[Astarion's brow creases.
$astarion Will what?
$astarion Or was that a name?
He doesn't wait for an answer before moving on.
](elseif: $just_said is "yes")[$astarion I thought so.
$astarion I thought as much.
](elseif: $just_said is "no")[Astarion is silent for a moment.
$astarion Quite the coincidence, then.
$astarion You showing up, and then this happening.<script>updateTrust(-1);</script>
]
|next>[Continue]{
}](elseif: $sequence is 2)[$astarion What do they mean by 'a way out'?
$astarion Are they going to try to open the door?
He sounds surprisingly apprehensive about that prospect.
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="maybe" class="energy-link" data-content="Speak: Maybe./Speech/2"></span>
<span id="probably" class="energy-link" data-content="Speak: Probably./Speech/2"></span>
<span id="obviously" class="energy-link" data-content="Speak: Obviously./Speech/2"></span>
<span id="bad" class="energy-link" data-content="Speak: Is that bad?/Speech/4"></span>
|next>[Do nothing.]{
}](elseif: $sequence is 3)[(if: $just_said is "obviously")[$astarion It's not obvious.<script>updateTrust(-1);</script>
Astarion snaps at you.
$astarion It's an ambiguous portent carved in the wall of a crypt. There's nothing <i>obvious</i> about this.
](elseif: $just_said is "bad")[$astarion No.
$astarion Perhaps.
$astarion It's complicated.
](else:)[Astarion stews over that idea for a moment.
(if: $astarion_trust > 9)[$astarion That might not be a good thing for us.](else:)[$astarion That might not be a good thing.]
]
|next>[Continue]{
}](elseif: $sequence is 4)[$astarion There are a great many dangerous things behind that door.
$astarion And there's him.
$astarion I am not supposed to leave until he lets me out.
(if: $speech < 2)[<span id="whisper" class="energy-link" data-content="Whisper./Speech/1"></span>
<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1"></span>
]<span id="escape" class="energy-link" data-content="Speak: Escape./Speech/2"></span>
<span id="wake" class="energy-link" data-content="Speak: Wake./Speech/2"></span>
<span id="fuck" class="energy-link" data-content="Speak: Fuck him./Speech/3"></span>
<span id="stay" class="energy-link" data-content="Speak: Want stay here?/Speech/4"></span>
|skip>[Do nothing.]{
}](elseif: $sequence is 5)[(if: $just_said is "escape")[$astarion That's a pretty idea with dire consequences.
](elseif: $just_said is "wake")[(set: $sequence to 13)(go-to: $currentPassage)
](elseif: $just_said is "fuck")[Astarion smiles very faintly.
$astarion That's easy for you to say.
$astarion He can't touch you.
](elseif: $just_said is "stay")[$astarion No.
$astarion No, obviously not.
$astarion I can't.
$astarion It's just...
](else:)[Astarion nods absently.
As if your noise had in some way actually contributed to the conversation.
]
|next>[Continue]{
}](elseif: $sequence is 6)[$astarion Things could always be worse.
$astarion He might have put me inside that coffin.
$astarion He might have hung me from a wall, impaled on a pike.(if: $astarion_trust > 9)[
$astarion He considered that. He showed me the pike.(if: $astarion_trust > 11)[ He made me touch it.]]
(if: $astarion_trust > 7)[<span id="oh" class="energy-link" data-content="Speak: Oh./Speech/2/8"></span>
<span id="hells" class="energy-link" data-content="Speak: Fucking Hells./Speech/2/8"></span>
<span id="murder" class="energy-link" data-content="Speak: Let's murder him./Speech/3"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1"></span>
|skip>[Do nothing.]
](else:)[|skip>[Continue]
]{
(display: "set mood tense")
}](elseif: $sequence is 7)[(if: $just_said is "murder")[Astarion laughs vaguely.(if: $astarion_trust > 7)[
$astarion You're very sweet.]
](elseif: $just_said is "touch")[Astarion makes a vague motion as if to pat your hand, which doesn't quite work since your hand doesn't physically exist.(if: $astarion_trust > 7)[
$astarion You're very sweet.]
]
|next>[Continue]{
<script>updateEmotion("calm",8);</script>
}](elseif: $sequence is 8)[(if: $just_said is "stay")[$astarion But if...
$astarion But you're right.
$astarion If there's any chance of being able to actually get out.
](else:)[$astarion But if...
$astarion If there's any chance of being able to get out.
$astarion Actually get out.
]$astarion Obviously I'll try. I have to.
He exhales shakily.
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> $astarion I clearly haven't learned anything at all.](else:)[//He says something else, but too quietly to make out. <span class="softEmph">Requires: Sight 2</span>//]
(if: $astarion_trust > 9)[|next>[Continue]](else:)[|conclude>[Continue]]{
}](elseif: $sequence is 9)[He stares at the message for a few moments more, then observes:
$astarion Perhaps it will be different with help.
|conclude>[Continue]{
}](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[(if: $astarion_learned_dream is not 0)[$astarion Wake.
$astarion You've talked before about this being a dream.
|next>[Continue]
](else:)[Astarion hesitates.(set: $astarion_learned_dream to $day)
$astarion Wake? What do you mean by wake?
<span id="wake" class="energy-link" data-content="Speak: Dream./Speech/2"></span>
<span id="fuck" class="energy-link" data-content="Speak: You're dreaming./Speech/3"></span>
]](elseif: $sequence is 14)[Astarion seems to mull the idea over for a little while.
Then he decides:
$astarion That would explain a great deal about how surreal my life has been, lately.
|conclude>[Continue]{
}](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?conclude)[(set: $sequence to 0)(go-to: "Astarion")]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's a small silhouette.
Like someone traced a soft impression of a bear.
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[As you focus on the item, |exp1>[you see more details.](click: ?exp1)[
//Or rather, more details exist to be seen. As they are perceived, they begin to exist.//]
Your attention helps this object manifest.
|next>[Continue]{
(set: $clive_state to "present")
}](elseif: $sequence is 3)[You are looking at a knitted toy bear stuffed with soft fur.
Its fabric is worn with much use.
<span id="take" class="energy-link" data-content="Take bear./Touch/5/+1/1"></span>
<span id="tell" class="energy-link" data-content="Tell Astarion about bear./Speech/2/+1/1"></span>
(if: $touch_trust > 1)[<span id="push" class="energy-link" data-content="Push Astarion towards bear./Touch/3"></span>
](if: $speech < 2 and $touch < 3)[<span id="bother" class="energy-link" data-content="Bother Astarion towards bear./Speech/1/+1/4"></span>
]|returnBase>[Do something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "take")[You pick up the bear.
He's very soft.
|returnBase>[Continue]{
(set: $player_inventory to it + (a: 'clive'))
(set: $objects_taken to it + (a: 'clive'))
}](elseif: $just_said is "tell")[Saying the word 'Sarcophagus' is enough to get Astarion to walk over here.
He finds the bear.
|next>[Continue]{
}](elseif: $just_said is "push")[Astarion tolerates being pushed in this direction.
He finds the bear.
|next>[Continue]{
}](else:)[You inefficiently communicate that you want Astarion to walk over here.
He finds the bear.
|next>[Continue]{
}]](elseif: $sequence is 5)[Astarion stares at the worn toy for a little while.
$astarion Well. This certainly wasn't here before.
$astarion Is this someone's idea of help? What am I supposed to do with this?
<span id="cuddle" class="energy-link" data-content="Speak: Cuddle./Speech/2"></span>
<span id="hold" class="energy-link" data-content="Speak: Hold./Speech/2"></span>
<span id="hug" class="energy-link" data-content="Speak: Hug bear./Speech/3"></span>
<span id="friend" class="energy-link" data-content="Speak: From friend./Speech/3/7"></span>
<span id="guess" class="energy-link" data-content="Speak: Try and guess./Speech/4"></span>
|next>[Say nothing.]{
(set: $astarion_interacted to true)
(set: $astarion_location to "sarcophagus")
(set: $just_said to "nothing")
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",4);</script>
<script>updateEmotion("calm",3);</script>
(set: $astarion_inventory to it + (a: 'clive'))
(set: $player_inventory to it - (a: 'clive'))
(set: $objects_taken to it + (a: 'clive'))
}](elseif: $sequence is 6)[(if: $just_said is "hold")[$astarion If you insist.
He takes the bear.
](elseif: $just_said is "nothing")[Astarion shrugs.
$astarion I suppose I'll find some use for it.
He takes the bear.
](else:)[Astarion doesn't dignify that with a response.
He does take the bear.
]
|returnBase>[Continue]](elseif: $sequence is 7)[$astarion 'Friend'? Who is it from, then?
<span id="karlach" class="energy-link" data-content="Speak: Karlach./Speech/2"></span>
<span id="mamak" class="energy-link" data-content="Speak: Mama K./Speech/3"></span>
<span id="tiefling" class="energy-link" data-content="Speak: Tall red tiefling./Speech/4"></span>
|next>[Say nothing.]{
}](elseif: $sequence is 8)[Astarion makes a pensive noise.
He does take the bear.
|returnBase>[Continue]{
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[Astarion has:
(if: $astarion_inventory's length is 0)[Nothing.
](if: $astarion_inventory contains 'pliers')[A set of pliers.
](if: $astarion_inventory contains 'oil')[A flask of oil.
](if: $astarion_inventory contains 'shroud')[A burial shroud.
](if: $astarion_inventory contains 'ring')[A magical ruby ring.
](if: $astarion_inventory contains 'clive')[A worn teddy bear.
](if: $astarion_inventory contains 'pottery shard')[A sharpened shard of pottery.
](if: $astarion_inventory contains 'water')[A carafe of water.
](if: $astarion_inventory contains 'empty carafe')[An empty carafe.
](if: $astarion_inventory contains 'brick')[A stone brick.
](if: $astarion_inventory contains 'amber')[A warm, red crystal.
](if: $astarion_inventory contains 'toolkit')[A kit of thieves' tools.
](if: $astarion_inventory contains 'knife')[(if: $knife_nature is "hunter")[A knife that makes things bleed.](elseif: $knife_nature is "sussur")[A knife that creates silence.](elseif: $knife_nature is "sussur")[A knife for killing dreams.](else:)[A knife.]
]
(if: $player_inventory contains 'oil')[<span id="oil" class="energy-link" data-content="Give him the flask of oil./Touch/0/2/0"></span>
](if: $player_inventory contains 'pliers')[<span id="pliers" class="energy-link" data-content="Give him the pliers./Touch/0/3/0"></span>
](if: $player_inventory contains 'clive')[<span id="clive" class="energy-link" data-content="Give him the teddy bear./Touch/0/4/0"></span>
](if: $player_inventory contains 'shroud')[<span id="shroud" class="energy-link" data-content="Give him the burial shroud./Touch/0/5/0"></span>
](if: $player_inventory contains 'knife')[<span id="knife" class="energy-link" data-content="Give him the knife./Touch/0/6/0"></span>
](if: $player_inventory contains 'amber')[<span id="amber" class="energy-link" data-content="Give him the fire amber./Touch/0/7/0"></span>
](if: $player_inventory contains 'toolkit')[<span id="toolkit" class="energy-link" data-content="Give him the toolkit./Touch/0/8/0"></span>
]|returnAstarion>[Do something else.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
(if: $astarion_inventory's length > 8)[<script>addAchieve("Happily Encumbered");</script>]
}](elseif: $sequence is 1)[Astarion curiously reaches out to accept the object emerging from nothingness.
$astarion What's this? Did you find a trinket?
He examines the delicate necklace with magpie pleasure.
$astarion This is well made.
$astarion It would look nice if it were polished.
|return>[Continue]{
}](elseif: $sequence is 2)[Astarion curiously reaches out to accept the object emerging from nothingness.
$astarion What's this?
$astarion Hm. That might be useful.
|return>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_inventory to it + (a: 'oil'))
(set: $player_inventory to it - (a: 'oil'))
(set: $vampire_enrichment_score to it+4)
<script>updateEmotion("happy",2);</script>
<script>updateEmotion("calm",2);</script>
}](elseif: $sequence is 3)[Astarion curiously reaches out to accept the object emerging from nothingness.
When he sees what it is, he blanches and drops it.
(if: $sight > 1)[<span class="softEmph">`[Unlocked: Sight 2]`</span> Then he mutters to himself:
$astarion Don't be precious about this.](else:)[He mutters something to himself that you can't quite make out. <span class="italicEmph">//Requires Sight: 2//</span>]
He retrieves the pliers from the ground.
$astarion Thank you. I'm sure this will be useful.
|return>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_inventory to it + (a: 'pliers'))
(set: $player_inventory to it - (a: 'pliers'))
(display: "set mood tense")
(set: $vampire_enrichment_score to it+4)
(set: $asked_list to it+"open-sarcophagus")
(set: $asked_list to it+"sarcophagus-tomb")
(set: $astarion_working_on to "sarcophagus")
(set: $asked_list to it+"open-sarcophagus")
(set: $astarion_sarcophagus_work to true)
}](elseif: $sequence is 4)[(set: $sequence to 5)(set: $basePassage to $currentPassage)(go-to: "Clive")
](elseif: $sequence is 5)[Astarion curiously reaches out to accept the object emerging from nothingness.
(if: $cold_astarion_state is "cold")[When he understands what it is, he immediately wraps it around his shoulders.
$astarion Thank you.
He looks much less cold.{
(set: $cold_astarion_state to "blanket")
}](else:)[$astarion Ah! Hm.
He examines the burial shroud critically.
$astarion This is in terrible repair, but it used to be nice.
$astarion Look, all of this decoration is backstitched. So it looks good on both sides of the cloth.]
|return>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_inventory to it + (a: 'shroud'))
(set: $player_inventory to it - (a: 'shroud'))
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",3);</script>
<script>updateEmotion("calm",3);</script>
}
](elseif: $sequence is 6)[(set: $sequence to 5)(set: $basePassage to $currentPassage)(go-to: "Knife")
](elseif: $sequence is 7)[(set: $sequence to 5)(set: $basePassage to $currentPassage)(go-to: "Amber")
](elseif: $sequence is 8)[(set: $sequence to 5)(set: $basePassage to $currentPassage)(go-to: "Toolkit")
]{
(click: ?returnAstarion)[(set: $sequence to 0)(go-to: "Astarion")]
}(if: $sequence is 0)[A yellowish blob of ooze the size of a cat sits near the door. It smells like eggs and acid.
Beside it there is a pile of ash and bone chips. It is absorbing these objects. As you watch, you can see them slowly dissolving.(if: $ash_trail_state is "to door")[
A trail of ash leads from the ooze to the stone door.](elseif: $ash_trail_state is "to hall")[
A trail of ash leads from the ooze to the stone door. You know it leads further out into the hallway.]
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $class is "wizard")[|next>[`[WIZARD]` Identify this creature.]
](if: $class is "ranger")[|next>[`[RANGER]` Identify this creature.]
](if: $class is "druid")[|next>[`[DRUID]` Identify this creature.]
]|skip>[Ask Astarion about it.]
<span id="hit" class="energy-link" data-content="Hit it./Touch/6/7/3"></span>
<span id="take" class="energy-link" data-content="Pick it up./Touch/5/8"></span>
<span id="yell" class="energy-link" data-content="Shout at it./Speech/6/9"></span>
|ash>[Do something with the ash.]
|returnBase>[Do something else.]]
{
(set: $just_said to "")
}](elseif: $sequence is 1)[This is a type of ooze known as an ochre jelly. Named for its color.
They often grow much larger than this. |exp1>[This one must be young.](click: ?exp1)[ Or else it had a violent encounter with something that slashed it into smaller pieces.]
It is amorphous and can |exp2>[slide through narrow cracks.](click-replace: ?exp2)[slide through narrow cracks, which is certainly how it got into this sealed tomb.]
It eats organic material. So it makes a great deal of sense to find one scavenging in a crypt.
|return>[Continue]{
(set: $know_ochre_jelly_name to true)
}](elseif: $sequence is 2)[(if: $just_said is "danger")[$astarion It's a blob of acid with a taste for flesh.(set: $asked_list to it+"ochre-danger")
$astarion So yes. A touch dangerous.
](elseif: $just_said is "plan1" or $just_said is "plan2")[(set: $ochre_plan_asked to true)(if: $astarion_inventory contains 'knife')[$astarion You found me a very pretty knife and I am very grateful.
$astarion I am certainly going to use it to kill that wretched thing.
$astarion But I'm almost finished with this.
He taps the pottery, which is at this point very sharp.
$astarion And it doesn't hurt to have an extra.](else:)[$astarion I am going to finish sharpening this bit of pottery.(set: $ochre_plan_asked to true)
$astarion Then I am going to stab that thing, taking particular care to stab and not slice, until it dies or relocates.
$astarion I am not excited about attacking something made of acid with what amounts to a tiny knife. I am open to other suggestions.]
](elseif: $just_said is "bludgeon")[$astarion That would be better, yes, but there's nothing in this room like that.(set: $asked_list to it+"ochre-bludgeon")
$astarion All the urns are broken. There's not even a sizable rock.(if: $sarcophagus_open is true)[
He glances down into the open sarcophagus he's perched on top of.
$astarion I suppose I could borrow our friend's skull. But I am a bit concerned about pushing my luck in terms of grave desecration.
$astarion I can deal with an ooze. I don't know how I would deal with a vengeful ghost.]
](elseif: $just_said is "ochreId")[$astarion How very exciting to know the correct name of the thing I'm about to stab.(set: $asked_list to it+"ochre-id")
$astarion Thank you ever so much.
](elseif: $just_said is "ring")[$astarion The magic in that ring creates a colorful lightshow that blinds the victim.(set: $asked_list to it+"ochre-ring")
$astarion Unfortunately, that creature doesn't have eyes.
](elseif: $just_said is "careful")[Astarion pauses in his work for a moment.(set: $asked_list to it+"ochre-careful")<script>updateTrust(1);</script>
(if: $astarion_trust > 9)[$astarion You're very sweet.
](if: $astarion_trust > 5)[$astarion Thank you.
](else:)[$astarion ...thank you.
]
](else:)[Astarion seems aware of you as you arrive. He is occupied with sharpening a piece of broken pottery.
$astarion You want to discuss our new neighbor?
$astarion They're not as polite as you are.(if: $astarion_trust < 6)[
$astarion By a thin margin.]
](if: not ($asked_list contains "ochre-danger"))[<span id="danger" class="energy-link" data-content="Speak: Danger?/Speech/2/2"></span>
](if: $ochre_plan_asked is false)[<span id="plan1" class="energy-link" data-content="Speak: Plan?/Speech/2/2"></span>
](if: $ochre_plan_asked is false)[<span id="plan2" class="energy-link" data-content="Tap the pottery Astarion is sharpening./Touch/1/2"></span>
](if: $know_ochre_jelly_name is true and not ($asked_list contains "ochre-id"))[<span id="ochreId" class="energy-link" data-content="Speak: Ochre jelly./Speech/3/2"></span>
](if: not ($asked_list contains "ochre-bludgeon"))[<span id="bludgeon" class="energy-link" data-content="Speak: Bludgeoning weapon./Speech/3/2"></span>
](if: $ash_trail_state is "absent" and not ($asked_list contains "ochre-lure"))[<span id="lure" class="energy-link" data-content="Speak: Lure away./Speech/3/3"></span>
](if: $astarion_inventory contains 'ring' and not ($asked_list contains "ochre-ring"))[<span id="ring" class="energy-link" data-content="Speak: Magic ring./Speech/3/2"></span>
](if: not ($asked_list contains "ochre-careful"))[<span id="careful" class="energy-link" data-content="Speak: Be careful./Speech/3/2"></span>
]|return>[Stop talking.]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 3)[$astarion There's a thought.(set: $asked_list to it+"ochre-lure")
Astarion pauses in his work.
$astarion It does like the ashes. They were enough to distract it.
|next>[Continue]{
}](elseif: $sequence is 4)[$astarion I could make a trail to the door.
$astarion But only that far. That might persuade it to catch itself in the seam of the door, but not to actually leave.
$astarion How ghostly are you?
$astarion Could you go through the door and smear a trail of ashes out into the hallway?
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/5"></span>
<span id="no" class="energy-link" data-content="Speak: No./Speech/2/5"></span>
<span id="maybe" class="energy-link" data-content="Speak: Maybe./Speech/2/5"></span>
|next>[Say nothing.]{
(set: $just_said to "nothing")
}](elseif: $sequence is 5)[(if: $just_said is "yes")[$astarion How exciting.
$astarion Here. I'll manage this part.
](elseif: $just_said is "no")[$astarion No? Ah well.
$astarion I think I'll still see if I can get it caught in the door.
](elseif: $just_said is "maybe")[$astarion Hm. Well, do what you can.
$astarion I'm going to see if I can get it caught in the door.
](else:)[$astarion I suppose that means no.
$astarion I'm going to see if I can get it caught in the door.
]
|next>[Continue]{
}](elseif: $sequence is 6)[Astarion climbs down from the sarcophagus. He steps lightly across the room and stops by the niches to gather a handful of funerary ash.
He makes a trail of it from the ooze in the corner to the stone door, smearing ash into the creases.
The ooze is still occupied with its meal, but when it's finished there's a new line of temptation.
Astarion returns to the sarcophagus.
|return>[Continue]{
(set: $ash_trail_state to "to door")
}](elseif: $sequence is 7)[You hit the ooze.
(if: $ochre_hit_count is 0)[It lashes about with its pseudopods for a moment, looking for something to attack back.
When it finds nothing, it goes back to eating.
You've hurt it a bit.](else:)[It burble unhappily.
You've hurt it a bit more.]
|return>[Continue]{
(set: $ochre_hit_count to it+1)
}](elseif: $sequence is 8)[The acid of its body cannot harm you, but it oozes fluidly out of your grip.
|return>[Continue]{
}](elseif: $sequence is 9)[You shout at the slime.
It seems indifferent.
(if: $ochre_shout_count is 5)[$astarion Are you...well?](else:)[Astarion glances over.]
|return>[Continue]{
(set: $astarion_interacted to true)
(set: $ochre_shout_count to it+1)
}](elseif: $sequence is 10)[(if: $ash_trail_state is "absent")[The ooze is slowly digesting a mound of ash and bone chips.
<span id="take" class="energy-link" data-content="Smear a trail of ash towards the door./Touch/3/11/4"></span>
|return>[Do something else.]{
}](elseif: $ash_trail_state is "to door")[A trail of ash leads from the ooze to the stone door.
<span id="take" class="energy-link" data-content="Smear a trail of ash out into the hallway./Touch/3/12/4"></span>
|return>[Do something else.]{
}](elseif: $ash_trail_state is "to hall")[A trail of ash leads from the ooze to the stone door. You know it leads further out into the hallway.
You don't need to do anything further with it.
|return>[Do something else.]]{
}](elseif: $sequence is 11)[It takes a great deal of time and energy, but you've traced a path of funerary ash from the ooze's meal to the door to the tomb.
The ooze is still occupied with eating, but when it's finished there's a new line of temptation.
|ash>[Continue]
{
(set: $ash_trail_state to "to door")
}](elseif: $sequence is 12)[You pass through the stone door, moving out into the hallway.
You smear the ash that you worked under the door out into the hall, trailing it as far as you can across the floor.
|hallway>[Continue]
{
(set: $ash_trail_state to "to hall")
}](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?ash)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?hallway)[(set: $sequence to 0)(go-to: "Dungeon Hallway")]
}(if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's a small silhouette.
A short weapon with a sharp edge.
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[Your attention helps this object manifest.
There's a moment when you think you might be able to change its nature--if you can focus hard enough.
It's a dagger, it must be a dagger, but it could be one of |exp1>[a few different weapons.](click: ?exp1)[
//Whoever is responsible for this wants to be accommodating. Knows you might have varying needs, when it comes to violence.//]
<span id="hunter" class="energy-link" data-content="A weapon that makes things bleed./Sight/4/+1/2"></span>
<span id="sussur" class="energy-link" data-content="A weapon that creates silence./Sight/5/+1/2"></span>
<span id="assassin" class="energy-link" data-content="A weapon for killing dreams./Sight/6/+1/2"></span>
|next>[Just a dagger will do.]{
(set: $knife_state to "present")
(set: $just_said to "dagger")
}](elseif: $sequence is 3)[A knife appears before you, handle towards your hand.
(if: $just_said is "hunter")[Its edge is serrated in a cruel way.
](elseif: $just_said is "sussur")[Smoke-like whorls of what look like dark sap slide up and down its edge.
](elseif: $just_said is "assassin")[Its blade is long and slender.
It looks normal, but also looking at it for too long makes you nervous.
](else:)[Its edge gleams with magic.
]
<span id="take" class="energy-link" data-content="Take knife./Touch/5/+1/1"></span>
<span id="tell" class="energy-link" data-content="Tell Astarion about knife./Speech/2/+1/1"></span>
(if: $touch_trust > 1)[<span id="push" class="energy-link" data-content="Push Astarion towards knife./Touch/3"></span>
](if: $speech < 2 and $touch < 3)[<span id="bother" class="energy-link" data-content="Bother Astarion towards knife./Speech/1/+1/4"></span>
]|returnBase>[Do something else.]{
(set: $knife_nature to $just_said)
}](elseif: $sequence is 4)[(if: $just_said is "take")[You pick up the knife.
|returnBase>[Continue]{
(set: $player_inventory to it + (a: 'knife'))
(set: $objects_taken to it + (a: 'knife'))
}](elseif: $just_said is "tell")[Saying the word 'Niches' is enough to get Astarion to walk over here.
He finds the knife.
|next>[Continue]{
}](elseif: $just_said is "push")[Astarion tolerates being pushed in this direction.
He finds the knife.
|next>[Continue]{
}](else:)[You inefficiently communicate that you want Astarion to walk over here.
He finds the knife.
|next>[Continue]{
}]](elseif: $sequence is 5)[(if: $day >= 172)[(if: $know_ghost_not_player is true)[Astarion stares at the knife.
$astarion How long have you had this?<script>updateTrust(-1);</script>
$astarion Do you think you could have given it over <i>before</i> the murder ghost?
$astarion Gods.
He does take it.
](else:)[Astarion stares at the knife.
$astarion Is this your way of apologizing?
$astarion Giving me something to stab you with, the next time you fly off the handle?
$astarion ...
He takes it.
]](else:)[$astarion <i>Oh.</i><script>updateEmotion("calm",10);</script>
$astarion Oh, this is <i>lovely.</i>
(if: $ochre_state is "present")[$astarion I am going to murder that tiny blot of pus <i>extremely effectively</i> with this.
](elseif: $day is 166)[Then, more irritably:
$astarion And it would have been extremely useful <i>yesterday.</i>
]]
|returnBase>[Continue]{
(set: $astarion_interacted to true)
(if: $ochre_state is not "present")[(set: $astarion_location to "niches")]
(set: $ochre_plan_asked to false)
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",4);</script>
<script>updateEmotion("calm",3);</script>
(set: $astarion_inventory to it + (a: 'knife'))
(set: $player_inventory to it - (a: 'knife'))
(set: $objects_taken to it + (a: 'knife'))
(set: $astarion_sarcophagus_work to true)
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[{
(if: $sigh_annoyed > 2)[(set: $sequence to 29)(go-to: "Sigh")]
}(if: $sigh contains "Sigh:")[Sigh smiles at you.](else:)[A creature of shadow with a mouth full of moon-white teeth looms above the room.
It smiles at you.]
(if: not ($sigh_chat_list contains "whatAreYou"))[<span id="whatAreYou" class="energy-link" data-content="What are you?/Dialog/0/11/0"></span>
](if: $sigh_trust > 6 and not ($sigh_chat_list contains "powerOfFriendship"))[<span id="powerOfFriendship" class="energy-link" data-content="I don`t suppose I could redeem you with the power of friendship?/Dialog/0/1/0"></span>
](if: $day < 168)[(if: not ($sigh_chat_list contains "letUsGo"))[<span id="letUsGo" class="energy-link" data-content="Could I convince you to let us go?/Dialog/0/9/0"></span>
](if: not ($sigh_chat_list contains "whyAreYou"))[<span id="whyAreYou" class="energy-link" data-content="Why are you doing this?/Dialog/0/15/0"></span>
]](if: $day > 166 and $day < 171)[(if: not ($sigh_chat_list contains "whatWant"))[<span id="whatWant" class="energy-link" data-content="What do you want?/Dialog/0/18/0"></span>
](if: not ($sigh_chat_list contains "weirdlyHappy"))[<span id="weirdlyHappy" class="energy-link" data-content="You seem weirdly happy that I`m here?/Dialog/0/23/0"></span>
](if: not ($sigh_chat_list contains "arentAttacking"))[<span id="arentAttacking" class="energy-link" data-content="Why aren`t you attacking us?/Dialog/0/25/0"></span>
]]|returnSigh>[Stop asking questions.]{
}](elseif: $sequence is 1)[$sigh PLEASE try.(set: $sigh_chat_list to it+"powerOfFriendship")(set: $sigh_trust to it+1)
It smiles at you.
|return>[Continue]{
}](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[$sigh I actually cannot.(set: $sigh_chat_list to it+"letUsGo")
$sigh He has so much pain. And my teeth are very deep in him.
$sigh It is not in my nature to let go once I have bitten down.
<span id="killYou" class="energy-link" data-content="If you don`t stop, I`ll kill you./Dialog/0/10/0"></span>
<span id="justMe" class="energy-link" data-content="Could you let just me go?/Dialog/0/10/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 10)[(if: $just_said is "killYou")[$sigh If you want me to stop, I think you will have to.
$sigh Or find a way to slip away into wakefulness.
$sigh Mercy is not an option. I am not that kind of monster.
$sigh Not in the midst of this kind of meal.
|return>[Continue]
](elseif: $just_said is "justMe")[$sigh If you leave I will miss you.
$sigh But I will not stop you.
$sigh There is a way out. Near the interment niches.
$sigh You just have to Look for it.
|return>[Continue]
]{
}](elseif: $sequence is 11)[$sigh The mortals call me Bastellus.(set: $sigh_chat_list to it+"whatAreYou")
$sigh I am a hungry ghost.
$sigh Not as hungry as my sister.
$sigh But I like to think I am more elegant than she is.
<span id="name" class="energy-link" data-content="Do you have a name?/Dialog/0/13/0"></span>
<span id="sister" class="energy-link" data-content="Who is your sister?/Dialog/0/12/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 12)[$sigh Don't worry about her.
$sigh She doesn't live near here.
<span id="name" class="energy-link" data-content="Do you have a name?/Dialog/0/13/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 13)[$sigh What a thoughtful thing to ask.
$sigh I do have a name.
$sigh I am Sigh.<script>addAchieve("It Has A Name");</script>
<span id="pleased" class="energy-link" data-content="Pleased to meet you, Sigh./Dialog/0/14/0"></span>
<span id="monster" class="energy-link" data-content="Good. I like to know the names of the monsters I kill./Dialog/0/14/0"></span>
<span id="whatKind" class="energy-link" data-content="What kind of a stupid name is Sigh?/Dialog/0/14/0"></span>
|return>[Stop talking about this.]{
(set: $sigh to "<span style='color: #919191;'>Sigh:</span> ")
(set: $sigh_trust to it+1)
}](elseif: $sequence is 14)[(if: $just_said is "pleased")[$sigh Is it?(set: $sigh_trust to it+1)
$sigh That's not the general opinion.
$sigh What a curious $sigh_pet_name you are.
](elseif: $just_said is "monster")[$sigh How conscientious.
](elseif: $just_said is "whatKind")[$sigh Mine.(set: $sigh_annoyed to it+1)
]
|return>[Continue]{
}](elseif: $sequence is 15)[$sigh This is my nature.(set: $sigh_chat_list to it+"whyAreYou")
$sigh I am not cruel on whim. This is how I eat.
$sigh Would you blame a predator for feeding as it must?
$sigh If you do, you choose curious companions.
(display: "My Nature Responses"){
}](elseif: $sequence is 16)[(if: $just_said is "enjoy")[$sigh Do you not enjoy dinner?(set: $sigh_chat_list to it+"enjoyingThis")
$sigh Do you suffer through a filling breakfast?
$sigh No. That would be foolish.
$sigh Of course I enjoy this.
(display: "My Nature Responses"){
}](elseif: $just_said is "evil")[$sigh Am I evil?(set: $sigh_annoyed to it+1)
$sigh Is there a magic spell that tells you that?
$sigh Compare me to mortals. Soft, warm animals designed to be kind to other warm animals.
$sigh Who break from their nature and play with suffering because it benefits or delights them.
$sigh I think I have a better reason.
<span id="defEvil" class="energy-link" data-content="Nope. Definitely evil./Dialog/0/17/0"></span>
<span id="havePoint" class="energy-link" data-content="I suppose you have a point./Dialog/0/17/0"></span>
|return>[Stop talking about this.]
](elseif: $just_said is "iCare")[$sigh That is ruthless and honest. I admire that.(set: $sigh_trust to it+1)(set: $sigh_chat_list to it+"dontCare")
$sigh No need for morality, then.
$sigh Let us be practical.
$sigh Kill me if you can, and I will devour what I can.
|return>[Continue]
](elseif: $just_said is "somethingElse")[$sigh If I were a story, then I could drink torment from stories.(set: $sigh_chat_list to it+"somethingElse")
$sigh But I am as real as anything in this world.
$sigh And so this world must suffer for me.
(display: "My Nature Responses"){
}](elseif: $just_said is "stop")[$sigh What an interesting question.(set: $sigh_trust to it+1)(set: $sigh_chat_list to it+"ifYouCould")
It pauses and reflects for a while.
$sigh No, I do not think I would stop. Even if I could.
$sigh You have no idea how good this tastes.
(display: "My Nature Responses"){
}]{
}](elseif: $sequence is 17)[(if: $just_said is "defEvil")[(if: $class is "paladin")[$sigh Well, you are the expert.](else:)[$sigh Well, if you insist.](set: $sigh_annoyed to it+1)
](elseif: $just_said is "havePoint")[$sigh Thank you.(set: $sigh_trust to it+1)(set: $sigh_annoyed to it-1)
]
|return>[Continue]{
}](elseif: $sequence is 18)[$sigh I have all that I want. I am hungry. Your suffering feeds me.(set: $sigh_chat_list to it+"whatWant")
$sigh His more than yours right now.
<span id="fromMe" class="energy-link" data-content="No I mean what do you want from me? Why are you talking to me?/Dialog/0/19/0"></span>
<span id="dietary" class="energy-link" data-content="I`m all about accommodating strange dietary needs, but you could have asked first./Dialog/0/21/0"></span>
|return>[Stop talking about this.]
](elseif: $sequence is 19)[$sigh I am intrigued by you.
$sigh By your choices. By your presence here.
$sigh I don't generally have much opportunity for conversation.
$sigh But this is a slow dream. And we both occupy a liminal space in it.
$sigh So why not?
<span id="bored" class="energy-link" data-content="Are you bored?/Dialog/0/20/0"></span>
<span id="lonely" class="energy-link" data-content="Are you lonely?/Dialog/0/20/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 20)[(if: $just_said is "bored")[$sigh Oh. No. Not at all.
$sigh I am occupied with this and many other minds.
$sigh I do not currently want for entertainment.
](elseif: $just_said is "lonely")[$sigh Hm.(set: $sigh_trust to it+1)
$sigh I don't think I am capable of that.
$sigh Not in the way you understand.
$sigh But perhaps something distantly similar.
]
|return>[Continue]{
}](elseif: $sequence is 21)[$sigh Ah. Pardon my rudeness.
$sigh Dear $sigh_pet_name, may I savage your soul and devour it piece by ragged piece?
$sigh And may I do the same to this man who you love, while you watch?
(display: "Sigh Violence"){
}<span id="no" class="energy-link" data-content="No./Dialog/0/22/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck you./Dialog/0/22/0"></span>
<span id="someoneElse" class="energy-link" data-content="I could have found you someone else./Dialog/0/22/0"></span>
<span id="love" class="energy-link" data-content="I don`t love him./Dialog/0/22/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 22)[(if: $just_said is "no" or $just_said is "fuck")[$sigh This is why I don't ask.
](elseif: $just_said is "someoneElse")[It makes a horrible sound. Like nails scraping against stone.(set: $sigh_trust to it+2)
After a moment, you realize it's laughing. This is what its laughter sounds like.<script>addAchieve("Laughing In The Dark");</script>
$sigh You are very delightful.
](elseif: $just_said is "love")[$sigh You have made some <i>very</i> singular life choices, then.
$sigh Or are you being pedantic about romance?
$sigh Love is so much more than that.
$sigh And in all of its many forms, it is an exquisite basis for suffering.
]
|return>[Continue]{
}](elseif: $sequence is 23)[$sigh I am a creature of intemperate appetites.(set: $sigh_chat_list to it+"weirdlyHappy")
$sigh Left to my own devices, I would have devoured this one by now.
$sigh But you are keeping him alive.
$sigh You are prolonging this wonderfully.
|return>[Continue]{
}](elseif: $sequence is 24)[
](elseif: $sequence is 25)[$sigh I am, in a way.(set: $sigh_chat_list to it+"arentAttacking")
$sigh I am actively devouring you. And him. As we speak.
$sigh I do not need to playact aggression. You are between my teeth.
|return>[Continue]{
}](elseif: $sequence is 26)[
]{
}(if: $Touch > 5)[<span id="hit" class="energy-link" data-content="Hit it./Touch/6/3/3/passage:Hello Nightmare"></span>](else:)[<span id="kill" class="energy-link" data-content="Try to kill it./Touch/1/3/7/passage:Hello Nightmare"></span>]
(if: $class is "paladin")[<span id="smite" class="energy-link" data-content="[PALADIN] Smite it./Touch/3/3/3/passage:Hello Nightmare"></span>
](if: $sequence is 1)[A creature of shadow with a mouth full of moon-white teeth looms above the room.(set: $active_event to "empty")
It smiles at you.
There is a voice like spiders skittering through your mind.
|next>[Continue]
](elseif: $sequence is 2)[$sigh $player_name. My delicious, uninvited guest.
$sigh Would you like to talk?
$sigh While I use my teeth to talk, I will not be using them to bite.
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/7/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/7/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck off./Dialog/0/7/0"></span>
<span id="waste" class="energy-link" data-content="I`m not wasting energy talking to you./Dialog/0/6/0"></span>
(display: "Sigh Violence"){
}](elseif: $sequence is 3)[(if: $just_said is "kill")[You try as hard as you can with what Touch you have to kill this thing.(set: $teeth_hit_count to it+3)
You think you do a little damage.
(if: $sigh_annoyed < 10)[$sigh This is how we will be, then.
]](elseif: $just_said is "hit")[You lash out at the teeth.(set: $teeth_hit_count to it+5)
You hit something. There's something there that can be hurt.
(if: $sigh_annoyed < 10)[$sigh This is how we will be, then.
]](elseif: $just_said is "smite")[Your powers are the kind that rise when they are needed. There is a burst of radiance in the blackness.(set: $teeth_hit_count to it+10)
The teeth clack harshly together.
(if: $sigh_annoyed < 10)[$sigh Oh, sweet candle. You are very lovely. I would have liked to speak further with you.
$sigh But I understand--this is how it must be.
]]
|next>[Continue]{
}](elseif: $sequence is 4)[{
(set: $player_hurt to 10-$energy)
(if: $player_hurt > 5)[(set: $player_hurt to 5)]
(set: $sigh_location to "absent permanent")
}He bites back, teeth long and painful. Tearing through the concept of you.
<span class='energy'>//Lost 10 Energy//</span>(set: $energy_change to -10)(display: "update energy silent")
|next>[Continue]{
}](elseif: $sequence is 5)[You stagger back.
You can hear the nightmare chewing on the parts of you it ripped off.
|timePasses>[Collapse]{
}](elseif: $sequence is 6)[$sigh I promise this will be effortless.
$sigh Look how many words you just used. Such a wealth of letters.
$sigh You could talk to me for hours, and still have a brimming, golden bar of energy to spend on the other predator.
$sigh Would you like to talk?
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/7/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/7/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck off./Dialog/0/7/0"></span>
(display: "Sigh Violence"){
}](elseif: $sequence is 7)[(if: $just_said is "yes")[$sigh I thought you might.(set: $sigh_trust to it+1)
$sigh Tell me what you would like to discuss.
$sigh I would be pleased to answer questions, if you have them.
|returnSigh>[Continue]
](elseif: $just_said is "no")[$sigh No?(set: $sigh_location to "absent permanent")
$sigh A pity.
$sigh Goodbye, $player_name.
|next>[Continue]
](elseif: $just_said is "fuck")[$sigh As you wish.(set: $sigh_location to "absent permanent")
$sigh Goodbye, $player_name.
|next>[Continue]
]{
}](elseif: $sequence is 8)[The nightmare drifts away, out of the tomb.
|returnTomb>[Continue]{
}]{
}{
(if: $sigh_annoyed > 2 and $sigh_annoyed < 10)[(set: $sequence to 29)]
(if: $sigh_trust > 2 and $day is 166 and not ($sigh_chat_list contains "adviceAsk"))[(set: $sequence to 5)]
(if: $sigh_trust > 3 and $story_count > 3 and $day is 167 and not ($sigh_chat_list contains "storyAsk"))[(set: $sequence to 8)]
(if: $sigh_trust > 6 and $sigh_proposal is "unmade" and $day is 169 and not ($sigh_chat_list contains "proposalAsk"))[(set: $sequence to 18)]
(if: $sigh_interaction_count > 3)[(set: $sigh_trust to it+1)(set: $sigh_interaction_count to 0)]
}(if: $sequence is 0)[(if: $sigh_trust > 7 and $day is 173 and not ($sigh_chat_list contains "honestTalk"))[The nightmare is smiling, but not as broadly as usual.
Its long fingers twitch restlessly.](elseif: $sigh contains "Sigh:")[Sigh smiles at you.](else:)[A creature of shadow with a mouth full of moon-white teeth looms above the room.
It smiles at you.](if: $day is 167 and not ($sigh_chat_list contains "whatWant"))[
You've thought of a few more questions to ask.]
(if: $sigh_trust > 1 and $sigh_greeted is false and $day is 168)[<span id="goodMorning" class="energy-link" data-content="Good morning./Dialog/0/4/0"></span>
](elseif: $sigh_trust > 1 and $sigh_greeted is false and $day is not 164)[<span id="hello" class="energy-link" data-content="Hello./Dialog/0/3/0"></span>
](if: $sigh_trust > 7 and $day is 173 and not ($sigh_chat_list contains "honestTalk"))[<span id="honestTalk" class="energy-link" data-content="Are you all right?/Dialog/0/30/0"></span>
](elseif: $day is 173 and not ($sigh_chat_list contains "ghostQuestion"))[<span id="makeGhost" class="energy-link" data-content="Did you make that ghost?/Dialog/0/35/0"></span>
](if: $day is 166 and not ($sigh_chat_list contains "oozeTalk"))[<span id="oozeTalk" class="energy-link" data-content="A monster got into the tomb yesterday./Dialog/0/11/0"></span>
](if: $day is 167 and not ($sigh_chat_list contains "coldTalk"))[<span id="coldTalk" class="energy-link" data-content="Are you making it cold?/Dialog/0/14/0"></span>
](if: $day is 169 and $drink_result is "failure" and not ($sigh_chat_list contains "bloodTalk"))[<span id="bloodTalk" class="energy-link" data-content="Did you create that blood?/Dialog/0/39/0"></span>
](if: $day is 173 and $sigh_deal_cold is true and not ($sigh_chat_list contains "coldTalkAgain"))[<span id="coldTalkAgain" class="energy-link" data-content="I want to make another deal to stop the cold./Dialog/0/37/0"></span>
](elseif: $day is 173 and not ($sigh_chat_list contains "coldTalkAgain"))[<span id="coldTalkAgain" class="energy-link" data-content="It`s cold again./Dialog/0/38/0"></span>
](if: $sigh_advice_unlocked is true and $sigh_advice_given is false)[<span id="advice" class="energy-link" data-content="Do you have any advice?/Dialog/0/7/0"></span>
](if: $sigh_stories_unlocked is true and $sigh_story_told is false)[<span id="story" class="energy-link" data-content="Do you have a story for me?/Dialog/0/9/0"></span>
]|sighQuestion>[Ask a question.]
(display: "Sigh Violence"){
}|endConversation>[Get away from it.]
](elseif: $sequence is 1)[$sigh You are very pleasant for someone who is talking to a monster.
$sigh I suppose you have practice.
$sigh I am going to leave now. I have other minds to tend to.
$sigh Do you want me to return?
<span id="tomorrow" class="energy-link" data-content="Yes. Come back tomorrow./Dialog/0/2/0"></span>
<span id="yes" class="energy-link" data-content="Yes. I do./Dialog/0/2/0"></span>
<span id="no" class="energy-link" data-content="No. I don`t./Dialog/0/2/0"></span>
<span id="despise" class="energy-link" data-content="I despise you and want you to die./Dialog/0/2/0"></span>{
}](elseif: $sequence is 2)[(if: $just_said is "tomorrow")[$sigh Not tomorrow. You will be busy tomorrow.(set: $sigh_visits to "yes")
$sigh But perhaps the next day.
](elseif: $just_said is "yes")[$sigh How pleasing.(set: $sigh_visits to "yes")
$sigh I will see you again.
](elseif: $just_said is "no")[$sigh Very well.(set: $sigh_visits to "no")
$sigh Goodbye.
](else:)[$sigh Of course. Of course.(set: $sigh_visits to "no")
$sigh Goodbye.
]
|endConversation>[Continue]{
(set: $sigh_location to "absent")
}
](elseif: $sequence is 3)[{
(set: $rand to (random: 1, 3))
}(if: $sigh_trust > 7)[(if: $rand is 1)[$sigh Hello, dear $sigh_pet_name.
](elseif: $rand is 2)[$sigh Hello, my sweet.
](elseif: $rand is 3)[$sigh Ah. It is the second most delicious thing in this dream.
]
](else:)[(if: $rand is 1)[$sigh Good evening, $player_name.
](elseif: $rand is 2)[$sigh Hello, $sigh_pet_name.
](elseif: $rand is 3)[$sigh My delicious guest.
]
]|return>[Continue]{
(set: $sigh_greeted to true)
(set: $sigh_interaction_count to it+1)
}](elseif: $sequence is 4)[$sigh Ugh.
$sigh No.
|return>[Continue]{
(set: $sigh_greeted to true)
(set: $sigh_annoyed to it+1)
}](elseif: $sequence is 5)[$sigh Would you like advice, $player_name?(set: $sigh_chat_list to it+"adviceAsk")
$sigh On your project. Keeping your vampire from dying of despair.
<span id="whyHelp" class="energy-link" data-content="Why would you help me?/Dialog/0/6/0"></span>
<span id="whyTrust" class="energy-link" data-content="Why would I trust any advice you gave me?/Dialog/0/6/0"></span>
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/6/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/6/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck off./Dialog/0/6/0"></span>{
}](elseif: $sequence is 6)[(if: $just_said is "whyHelp")[$sigh The longer he endures, the longer I can feed on him.
$sigh I have never had a victim survive so long in so desolate a dream.
$sigh It's actually very exciting. Would you like advice?
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/6/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/6/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck off./Dialog/0/6/0"></span>{
}](elseif: $just_said is "whyTrust")[$sigh Perhaps you should not.
$sigh But then, you can judge my suggestions on their own merits.
$sigh I understand comfort. It is one of my favorite tools.
$sigh Would you like advice?
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/6/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/6/0"></span>
<span id="fuck" class="energy-link" data-content="Fuck off./Dialog/0/6/0"></span>{
}](elseif: $just_said is "yes")[$sigh I think your vampire will do better if you do different things with him.
$sigh A day begun with a greeting and filled with different activities is more sustaining than repetitive hand-holding.
$sigh That is how your minds work. You like variety.
|return>[Continue]{
(set: $sigh_advice_unlocked to true)
}](elseif: $just_said is "no")[$sigh Very well.
$sigh I will keep my counsel to myself.
|return>[Continue]
](else:)[$sigh Hmph.(set: $sigh_annoyed to it+1)
|return>[Continue]
]{
}](elseif: $sequence is 7)[(if: $sigh_advice_count is 0)[(if: $player_inventory contains 'clive')[$sigh That little scrap of cloth and fur. The imitation of a beast that you hold.
$sigh Soft things are comforting in the dark. It heals your mind to have it as time passes.
$sigh It would do the same for him.](else:)[$sigh Your vampire is a magpie.
$sigh I think it will please him to have little objects.
$sigh Most brightly in the moment of acquisition, but also over time.
$sigh Some may please him more than others.]
](elseif: $sigh_advice_count is 1)[$sigh Your vampire would be a mercurial thing, I think, in the light.
$sigh But darkness makes him dull. And I can eat the edges of despair that fester around dullness.
$sigh Tension tastes better. And his fear is delicious.
$sigh When he is calm, it's harder to bite into him.
$sigh When he is happy, I cannot touch him at all.
](elseif: $sigh_advice_count is 2)[$sigh Small things sustain him in the dark. Only one a day will make such a difference.
$sigh A story. A smile. A touch.
$sigh No smiles from you. Though you see, you cannot be seen.
$sigh I will smile enough for the both of us.
](else:)[$sigh You have exhausted my capacity for empathy.
$sigh Unsurprising. It was not robust to begin with.
]|return>[Continue]{
(set: $sigh_advice_count to it+1)
(set: $sigh_advice_given to true)
(set: $sigh_interaction_count to it+1)
}](elseif: $sequence is 8)[$sigh You like to hear stories.(set: $sigh_chat_list to it+"storyAsk")
$sigh Would you like me to tell you a story?
$sigh I have many dreamers between my teeth tonight.
$sigh I will tell you their stories, if you like.
<span id="yes" class="energy-link" data-content="Yes, tell me a story./Dialog/0/9/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/0/0"></span>{
}](elseif: $sequence is 9)[(if: $sigh_story_count is 0)[$sigh There is a man who thinks that his old pain is crusted over.(set: $sigh_trust to it+1)(set: $sigh_stories_unlocked to true)
$sigh Who thinks he is beyond it.
$sigh But he has never healed from his wounds.
$sigh I have trapped him in the same night. I have him lose his wife and daughter again and again.
$sigh It never gets less painful. It is quite marvelous.
$sigh I adore those minds who live in the past.
|return>[Continue]](elseif: $sigh_story_count is 1)[$sigh There is a boy.(set: $sigh_trust to it+1)
$sigh He looks like a man, but he never grew up.
$sigh I have held him back where pain has trapped him. In a house where there is never enough, with parents who do not want him.
$sigh His pain is not very interesting.
$sigh But I will eat him anyway.
|return>[Continue]](elseif: $sigh_story_count is 2)[$sigh There is a woman.(set: $sigh_trust to it+1)
$sigh Her life is a nightmare. She is a nightmare. So you might think my job difficult.
$sigh But I had given her a dream.
$sigh She dreams of soft smiles and gentle hands that do not hold knives.
$sigh I have given her parents who love her, and ask nothing of her but that she exist to be loved.
$sigh And then, just as she is becoming accustomed to this, I wake her.
$sigh And she remembers what she is.
|next>[Continue]](else:)[$sigh No more stories.
$sigh Only silence.
|return>[Continue]]{
(set: $sigh_story_count to it+1)
(set: $sigh_story_told to true)
}](elseif: $sequence is 10)[$sigh She has willingly come back to me three times now. Slept again even though she woke.
$sigh It is interesting. I think this is what it means to be friends?
$sigh I think I have a friend.
$sigh I am still going to eat her.
|return>[Continue]{
<script>addAchieve("Upsetting Storytime");</script>
}](elseif: $sequence is 11)[$sigh Indeed?(set: $sigh_chat_list to it+"oozeTalk")
<span id="coincidence" class="energy-link" data-content="Funny coincidence, you showing up. Then that happening./Dialog/0/12/0"></span>
<span id="didYou" class="energy-link" data-content="Did you make that happen?/Dialog/0/12/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 12)[(if: $just_said is "coincidence")[$sigh Yes.
$sigh A coincidence.
|return>[Continue]
](elseif: $just_said is "didYou")[$sigh Yes.
<span id="couldYouNot" class="energy-link" data-content="Could you NOT?/Dialog/0/13/0"></span>
<span id="change" class="energy-link" data-content="So you can change the dream?/Dialog/0/13/0"></span>
<span id="murder" class="energy-link" data-content="I am going to murder you so much./Dialog/0/13/0"></span>]{
}](elseif: $sequence is 13)[(if: $just_said is "couldYouNot")[$sigh There are other forces interfering.
$sigh And I cannot let this become too pleasant.
$sigh It IS a nightmare.
](elseif: $just_said is "change")[$sigh To a certain extent.
$sigh It has a set shape now. Its own rules and momentum.
$sigh Changes are easiest when they make a certain amount of thematic sense.
](elseif: $just_said is "murder")[$sigh Take your best shot, $sigh_pet_name.
]
|return>[Continue]{
}](elseif: $sequence is 14)[$sigh It is cold because it is winter.(set: $sigh_chat_list to it+"coldTalk")
$sigh But yes. I did adjust things to make winter come early.
$sigh It was an easy change. He doesn't remember the date.
$sigh He has a very patchy memory in general. It makes editing much easier.
<span id="hate" class="energy-link" data-content="I hate you./Dialog/0/15/0"></span>
<span id="stop" class="energy-link" data-content="Could I persuade you to stop it?/Dialog/0/15/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 15)[(if: $just_said is "hate")[$sigh I know.
$sigh I can taste it on you.
|return>[Continue]
](elseif: $just_said is "stop")[$sigh No. I will not stop. This is how I kill him, I think.
$sigh But I might be persuaded to prolong this suffering.
$sigh If I gentle the the cold, for a few days, what will you give me?
<span id="want" class="energy-link" data-content="What do you want?/Dialog/0/16/0"></span>
(if: $player_inventory contains 'knife')[<span id="knife" class="energy-link" data-content="I have this knife./Dialog/0/16/0"></span>
](if: $player_inventory contains 'clive')[<span id="bear" class="energy-link" data-content="I have this bear./Dialog/0/16/0"></span>
]|return>[Stop talking about this.]
]{
}](elseif: $sequence is 16)[(if: $just_said is "want")[$sigh I miss the flavor of his loneliness.
$sigh Leave him entirely alone for two days.
$sigh No words. No touch.
$sigh After two days of solitude, I will gentle the cold. For a little while.
<span id="agreeSolitude" class="energy-link" data-content="Deal./Dialog/0/17/0"></span>
<span id="stop" class="energy-link" data-content="No. Something else./Dialog/0/15/0"></span>
|return>[Stop talking about this.]{
}](elseif: $just_said is "knife" and $knife_nature is "assassin")[$sigh I do not need...
$sigh Wait.
It examines the knife that you have.
$sigh ...yes.
$sigh Give that to me, and I will gentle the cold.
<span id="agreeKnife" class="energy-link" data-content="Deal./Dialog/0/17/0"></span>
<span id="stop" class="energy-link" data-content="No. Something else./Dialog/0/15/0"></span>
|return>[Stop talking about this.]{
}](elseif: $just_said is "knife")[$sigh I do not need knives.
$sigh I have my teeth.
<span id="stop" class="energy-link" data-content="Something else then./Dialog/0/15/0"></span>
|return>[Stop talking about this.]{
}](elseif: $just_said is "bear")[$sigh Oh! Yes!
$sigh That brings you comfort.
$sigh It would please me to shred that in front of you.
$sigh If you give the soft thing to me then I will gentle the cold. For a while.
<span id="agreeClive" class="energy-link" data-content="Deal./Dialog/0/17/0"></span>
<span id="stop" class="energy-link" data-content="No. Something else./Dialog/0/15/0"></span>
|return>[Stop talking about this.]{
}]{
}](elseif: $sequence is 17)[(if: $just_said is "agreeSolitude")[$sigh We have an agreement. Two days of silence.
(if: $astarion_interacted is true)[$sigh You have made your presence felt today, so the count will begin tomorrow.(set: $sigh_solitude_count to 0)
](else:)[$sigh You have not made your presence felt today, so this can be the first day.(set: $sigh_solitude_count to 1)
]$sigh After the quiet, I will gentle the cold. For a little while.
$sigh And if you break our pact, I will not.
|return>[Continue]{
(set: $sigh_deal_cold to true)
}](elseif: $just_said is "agreeKnife")[You hold out the knife, handle first.(set: $cold_state to "ending")(set: $sigh_location to "absent")(set: $player_inventory to it - (a: 'knife'))
The nightmare takes it.
$sigh It will be warmer tomorrow.
$sigh I will...go dispose of this thing.
It departs.
|returnTomb>[Continue]{
(set: $sigh_deal_cold to true)
}](elseif: $just_said is "agreeClive")[You hold out the teddy bear.(set: $cold_state to "ending")(set: $player_inventory to it - (a: 'clive'))
The nightmare takes it, and shreds it into scraps of cloth and fur.
$sigh Lovely.
$sigh That was lovely to destroy.
$sigh It will be warmer tomorrow.
|return>[Continue]]{
(set: $sigh_deal_cold to true)
}](elseif: $sequence is 18)[$sigh $player_name, I have come to bargain.(set: $sigh_proposal to "rejected")(set: $sigh_chat_list to it+"proposalAsk")
$sigh Will you hear me?
<span id="yes" class="energy-link" data-content="Yes./Dialog/0/19/0"></span>
<span id="yes2" class="energy-link" data-content="What do you want?/Dialog/0/19/0"></span>
<span id="no" class="energy-link" data-content="No./Dialog/0/19/0"></span>
<span id="no2" class="energy-link" data-content="No, fuck off./Dialog/0/19/0"></span>{
}](elseif: $sequence is 19)[(if: $just_said is "yes" or $just_said is "yes2")[$sigh You and your vampire are part of a web of minds.
$sigh You are connected by the little creatures in your heads.
$sigh I have found a great mind in the center of the web.
$sigh She sleeps, just like all the others. Her dreams are deep and her fears are slow.
$sigh She fears you. She wants to kill you.
$sigh I could devour her for you.
<span id="yes" class="energy-link" data-content="Yes. Yes, do that./Dialog/0/20/0"></span>
<span id="help" class="energy-link" data-content="I don`t need your help./Dialog/0/20/0"></span>
<span id="want" class="energy-link" data-content="You`re going to want something in exchange for that./Dialog/0/20/0"></span>
<span id="absolute" class="energy-link" data-content="That`s called the Absolute. That`s a god./Dialog/0/20/0"></span>{
}](elseif: $just_said is "no" or $just_said is "no2")[$sigh Hmm.
$sigh Pity.
|return>[Continue]
]{
}](elseif: $sequence is 20)[(if: $just_said is "yes")[$sigh Not so quickly, my $sigh_pet_name.
$sigh This is not a gift. It is a bargain.
](elseif: $just_said is "help")[$sigh Are you certain?
$sigh She is shockingly powerful.
$sigh And she dreams obsessively of your death. Specifically you.
](elseif: $just_said is "want")[$sigh You are insightful.
$sigh I do want something.
](elseif: $just_said is "absolute")[$sigh Is it?
$sigh How intriguing.
$sigh I have never eaten a god.
$sigh I wonder what that would do to me.
]
|next>[Continue]{
}](elseif: $sequence is 21)[$sigh This would not be a safe thing for me to do.
$sigh This is a powerful mind that wants you dead.
$sigh But I will do it. For you.
$sigh If you give me him.
It gestures with long fingers towards the room below and its solitary occupant.
<span id="no" class="energy-link" data-content="No./Dialog/0/22/0"></span>
<span id="no2" class="energy-link" data-content="Fuck you./Dialog/0/22/0"></span>
<span id="scared" class="energy-link" data-content="You`re scared./Dialog/0/22/0"></span>
(display: "Sigh Violence"){
}<span id="how" class="energy-link" data-content="How would I do that?/Dialog/0/25/0"></span>{
}](elseif: $sequence is 22)[(if: $just_said is "no" or $just_said is "no2")[$sigh Disappointing.
$sigh But not terribly surprising.
$sigh Back to our usual game, then.
|return>[Continue]
](elseif: $just_said is "scared")[$sigh Pardon me?
<span id="out" class="energy-link" data-content="We have help. We`re going to get out./Dialog/0/23/0"></span>
<span id="losing" class="energy-link" data-content="You know you`re losing, and you`re getting desperate./Dialog/0/23/0"></span>
<span id="cant" class="energy-link" data-content="You`ve said you can`t let go of him, and you can`t change this dream./Dialog/0/23/0"></span>
<span id="vulnerable" class="energy-link" data-content="I think you`re vulnerable right now./Dialog/0/23/0"></span>
<span id="afraid" class="energy-link" data-content="I think you`re afraid of us./Dialog/0/23/0"></span>{
}]{
}](elseif: $sequence is 23)[$sigh ...(set: $sigh_annoyed to 10)(set: $sigh_location to "absent permanent")
$sigh I am no longer in the mood for conversation.
It starts to float away.
<span id="run" class="energy-link" data-content="Yeah. You`d better run./Dialog/0/24/0"></span>
(display: "Sigh Violence"){
}<span id="run2" class="energy-link" data-content="Let it go./Speech/0/24/0"></span>
<span id="wait" class="energy-link" data-content="Wait./Dialog/0/24/0"></span>
](elseif: $sequence is 24)[(if: $just_said is "run" or $just_said is "run2")[The nightmare departs.
|returnTomb>[Continue]{
}](elseif: $just_said is "wait")[The nightmare pauses.
<span id="run" class="energy-link" data-content="Nothing. Let it go./Speech/0/24/0"></span>
(display: "Sigh Violence"){
}<span id="wait" class="energy-link" data-content="I didn`t say no. How would I give him to you?/Dialog/0/25/0"></span>
]{
}](elseif: $sequence is 25)[It floats closer to you, smile somehow growing wider.(set: $sigh_annoyed to 0)(set: $sigh_location to "tomb")
$sigh It would have to be more than merely allowing him to fade.
$sigh I will need power, you see. To destroy your enemy.
$sigh I need to be well fed.
|next>[Continue]{
}](elseif: $sequence is 26)[$sigh I would accept a devastating betrayal in exchange for my assistance.
$sigh There is a fractious entity that walks this dream. A center-point of pain that breaks the cohesion of the dream with his intensity.
$sigh You will likely attract His Attention, if you leave this room.
$sigh Lead him to Astarion.
$sigh I would finish my meal in an ecstasy of terror.
<span id="agree" class="energy-link" data-content="Yes. I can do that./Dialog/0/27/0"></span>
<span id="disagree" class="energy-link" data-content="No. I won`t do that./Dialog/0/27/0"></span>{
}](elseif: $sequence is 27)[(if: $just_said is "disagree")[The nightmare sighs, frustrated.<script>playAudio("aa_sigh");</script>(set: $sigh_annoyed to 3)
$sigh That is <i>very</i> disappointing.
|return>[Continue]{
}](elseif: $just_said is "agree")[$sigh Oh, my $sigh_pet_name.
$sigh I hope, I dearly hope, you will keep to this agreement we've made.
$sigh It would be delicious. It would be exquisite.
|next>[Continue]]{
(set: $sigh_proposal to "accepted")
<script>addAchieve("Last Meal");</script>
}](elseif: $sequence is 28)[$sigh He must know it was you.
$sigh It is not enough for him to die. It must be a betrayal.
$sigh He must know it was you who killed him.
$sigh However you do it, be sure he knows.
|return>[Continue]
](elseif: $sequence is 29)[$sigh ...
$sigh I am no longer in the mood for conversation.
It sounds irritated, and as if it is trying to conceal that it is irritated.
It floats away.
|returnTomb>[Good riddance.]
|returnTomb>[Do something else.]{
<script>addAchieve("Irritate the Bastellus");</script>
(set: $sigh_location to "absent permanent")
(set: $sigh_visits to "no")
}](elseif: $sequence is 30)[$sigh What a sweet $sigh_pet_name.(set: $sigh_chat_list to it+"honestTalk")
$sigh You are perceptive. I am troubled.
<span id="talk" class="energy-link" data-content="Do you want to talk about it?/Dialog/0/31/0"></span>
<span id="suffer" class="energy-link" data-content="Good. I hope you suffer./Dialog/0/31/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 31)[(if: $just_said is "talk")[$sigh If you wish.
$sigh I am occupied with future loss.
$sigh My nature is feast and famine.
$sigh I cannot sip delicately from a mind. No. My teeth kill.
$sigh And when this gluttonous ecstasy is finished, I will wander wanting again.
|next>[Continue]{
}](elseif: $just_said is "suffer")[$sigh Of course. Of course.
It shakes off its strange mood and returns to smiling.
|return>[Continue]{
}]](elseif: $sequence is 32)[$sigh It's a travesty to have all these minds, and know that despite this windfall of wealth, I will go hungry again.
$sigh I do wish I could be temperate.
$sigh For the sake of my appetite, but also I covet the experience.
$sigh Wouldn't it be beautiful, to stretch suffering over weeks? Or months? Or years?
$sigh To become familiar with the nuances of it, and uncover all the flavors of a mind?
<span id="suffer" class="energy-link" data-content="That sounds horrible./Dialog/0/31/0"></span>
(if: $player_dark_urge is true)[<span id="beautiful" class="energy-link" data-content="[DARK URGE]: That sounds beautiful./Speech/0/33/0"></span>]
<span id="notKilling" class="energy-link" data-content="Have you ever tried not killing people?/Dialog/0/33/0"></span>
<span id="leash" class="energy-link" data-content="You sound like you need a leash./Dialog/0/33/0"></span>
|return>[Stop talking about this.]{
}](elseif: $sequence is 33)[(if: $just_said is "beautiful")[$sigh Do you think so?(set: $sigh_trust to it+3)
$sigh Do you see the dream in my nightmare?
$sigh That is pleasant.
$sigh That is very pleasant.
|return>[Continue]{
}](elseif: $just_said is "notKilling")[$sigh I have. But as I've said before, I am a creature of intemperate appetites.
$sigh A consummate monster. Immoral and immoderate.
|next>[Continue]{
}](elseif: $just_said is "leash")[$sigh I tend to bite through them.
$sigh There was a woman once. The one who brought me here.
$sigh Summoned me. Bound me. Set me on adventurers. But I feigned my death and slipped away.
$sigh I'd tell you the story, but it's long enough to fill a novel.
|next>[Continue]{
}]{
}](elseif: $sequence is 34)[$sigh It does not matter.
$sigh I will live in the moment.
$sigh I will enjoy this while it lasts.
It smiles at you, and then down at the figure in the tomb.
|return>[Continue]{
}](elseif: $sequence is 35)[$sigh I did.(set: $sigh_chat_list to it+"ghostQuestion")
<span id="hate" class="energy-link" data-content="I hate you./Dialog/0/36/0"></span>
<span id="clever" class="energy-link" data-content="That was clever./Dialog/0/36/0"></span>
(if: $know_ghost_not_player is true)[<span id="didntMatter" class="energy-link" data-content="It didn`t matter. He knew it wasn`t me./Dialog/0/36/0"></span>
]|return>[Stop talking about this.]{
}](elseif: $sequence is 36)[(if: $just_said is "hate")[It smiles.
$sigh I know.
](elseif: $just_said is "clever")[$sigh Thank you.(set: $sigh_trust to it+1)
](elseif: $just_said is "didntMatter")[$sigh Yes.
It doesn't say anything for a few moments.
$sigh So he did.
It sounds confused.
]
|return>[Continue]{
}](elseif: $sequence is 37)[$sigh No.(set: $sigh_chat_list to it+"coldTalkAgain")
$sigh This is how I kill him.
|return>[It has nothing more to say on the subject.]{
}
](elseif: $sequence is 38)[$sigh Yes.(set: $sigh_chat_list to it+"coldTalkAgain")
$sigh This is how I kill him.
|return>[It has nothing more to say on the subject.]{
}
](elseif: $sequence is 39)[$sigh No, my $sigh_pet_name.(set: $sigh_chat_list to it+"bloodTalk")
$sigh That was a torment born of kindness.
$sigh Lord what fools these heores be.
|return>[Continue]{
}](elseif: $sequence is 40)[
](elseif: $sequence is 41)[
](elseif: $sequence is 42)[
]{
(click: ?sighQuestion)[(set: $sequence to 0)(go-to: "Sigh Questions")]
(click: ?endConversation)[(if: $sigh_trust > 1 and $sigh_visits is "unasked")[(set: $sequence to 1)(go-to: "Sigh")](else:)[(set: $sequence to 0)(go-to: "The Tomb")]]
}(if: not ($sigh_chat_list contains "enjoyingThis"))[<span id="enjoy" class="energy-link" data-content="You`re enjoying this, though./Dialog/0/16/0"></span>
]<span id="evil" class="energy-link" data-content="You`re evil./Dialog/0/16/0"></span>
(if: not ($sigh_chat_list contains "dontCare"))[<span id="iCare" class="energy-link" data-content="I don`t care about philosophy. You`re hurting people I care about./Dialog/0/16/0"></span>
](if: not ($sigh_chat_list contains "somethingElse"))[<span id="somethingElse" class="energy-link" data-content="Couldn`t you eat something else?/Dialog/0/16/0"></span>
](if: not ($sigh_chat_list contains "ifYouCould"))[<span id="stop" class="energy-link" data-content="If you could, would you stop?/Dialog/0/16/0"></span>
]|return>[Stop talking about this.](if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's a small silhouette.
A crystal of some sort. Fire-red and the size of your fist.
Even in this only semi-real state you can feel it radiating warmth.
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[As you focus on the item, |exp1>[you see more details.](click: ?exp1)[
//Or rather, more details exist to be seen. As they are perceived, they begin to exist.//]
Your attention helps this object manifest.
|next>[Continue]{
(set: $amber_state to "present")
}](elseif: $sequence is 3)[You are looking at a piece of Fire Amber.
Lambent from within, these crystals are the very progenitors of flame. It glows red and radiates warmth.
<span id="take" class="energy-link" data-content="Take amber./Touch/5/+1/1"></span>
<span id="tell" class="energy-link" data-content="Tell Astarion about amber./Speech/2/+1/1"></span>
(if: $touch_trust > 1)[<span id="push" class="energy-link" data-content="Push Astarion towards amber./Touch/3"></span>
](if: $speech < 2 and $touch < 3)[<span id="bother" class="energy-link" data-content="Bother Astarion towards amber./Speech/1/+1/4"></span>
]|returnBase>[Do something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "take")[You pick up the amber.
It's very warm.
|returnBase>[Continue]{
(set: $player_inventory to it + (a: 'amber'))
(set: $objects_taken to it + (a: 'amber'))
}](elseif: $just_said is "tell")[(if: $cold_astarion_state is "freezing")[Astarion isn't very responsive, but something in your tone gets him to move.](else:)[Saying the word 'Door' is enough to get Astarion to walk over here.]
He finds the amber.
|next>[Continue]{
}](elseif: $just_said is "push")[(if: $cold_astarion_state is "freezing")[Astarion isn't very responsive, but you are insistent and get him to move.](else:)[Astarion tolerates being pushed in this direction.]
He finds the amber.
|next>[Continue]{
}](else:)[(if: $cold_astarion_state is "freezing")[Astarion isn't very responsive, but you are insistent and get him to move.](else:)[You inefficiently communicate that you want Astarion to walk over here.]
He finds the amber.
|next>[Continue]{
}]](elseif: $sequence is 5)[(if: $cold_astarion_state is "freezing")[Astarion snatches up the red crystal and presses it against his chest.
It glows flickering red, making the space look firelit. It takes a while before the shivering subsides to the point where Astarion can talk easily.
$astarion Thank you.
$astarion Gods. Thank you.<script>updateTrust(1);</script>
](elseif: $cold_astarion_state is "cold")[Astarion snatches up the red crystal. He holds it close to himself, wrapping his hands around it.
It glows flickering red, making the space look firelit.
After only a little while, Astarion stops shivering.
$astarion Thank you.
](else:)[Astarion snatches up the red crystal. He holds it close to himself, wrapping his hands around it.
It glows flickering red, making the space look firelit.
$astarion Ah. This is. This is also good.
]|returnBase>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_location to "door")
(set: $just_said to "nothing")
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",4);</script>
<script>updateEmotion("calm",10);</script>
(set: $cold_astarion_state to "amber")
(set: $astarion_inventory to it + (a: 'amber'))
(set: $player_inventory to it - (a: 'amber'))
(set: $objects_taken to it + (a: 'amber'))
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's a small silhouette.
It's a long case of some sort. Made of leather.
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[As you focus on the item, |exp1>[you see more details.](click: ?exp1)[
//Or rather, more details exist to be seen. As they are perceived, they begin to exist.//]
Your attention helps this object manifest.
|next>[Continue]{
(set: $toolkit_state to "present")
}](elseif: $sequence is 3)[You are looking at a thieves' toolkit.
It's a collection of hooks, picks, and wrenches for picking locks and disarming traps.
<span id="take" class="energy-link" data-content="Take toolkit./Touch/5/+1/1"></span>
<span id="tell" class="energy-link" data-content="Tell Astarion about toolkit./Speech/2/+1/1"></span>
(if: $touch_trust > 1)[<span id="push" class="energy-link" data-content="Push Astarion towards toolkit./Touch/3"></span>
](if: $speech < 2 and $touch < 3)[<span id="bother" class="energy-link" data-content="Bother Astarion towards toolkit./Speech/1/+1/4"></span>
]|returnBase>[Do something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "take")[You pick up the toolkit.
|returnBase>[Continue]{
(set: $player_inventory to it + (a: 'toolkit'))
(set: $objects_taken to it + (a: 'toolkit'))
}](elseif: $just_said is "tell")[Saying the word 'Door' is enough to get Astarion to walk over here.
He finds the toolkit.
|next>[Continue]{
}](elseif: $just_said is "push")[Astarion tolerates being pushed in this direction.
He finds the toolkit.
|next>[Continue]{
}](else:)[You inefficiently communicate that you want Astarion to walk over here.
He finds the toolkit.
|next>[Continue]{
}]](elseif: $sequence is 5)[Astarion opens the toolkit and immediately rifles through the contents.
He seems very satisfied with what he finds.
$astarion Whoever sent this.
$astarion They're my favorite.
<span id="rude" class="energy-link" data-content="Speak: Rude./Speech/2"></span>
<span id="shadowheart" class="energy-link" data-content="Speak: Probably Shadowheart./Speech/3"></span>
|returnBase>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_location to "door")
(set: $just_said to "nothing")
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",8);</script>
<script>updateEmotion("calm",2);</script>
(set: $astarion_inventory to it + (a: 'toolkit'))
(set: $player_inventory to it - (a: 'toolkit'))
(set: $objects_taken to it + (a: 'toolkit'))
}](elseif: $sequence is 6)[(if: $just_said is "rude")[(if: $astarion_trust < 7)[$astarion Give me more lockpicks and perhaps I will like you better.
](elseif: $astarion_trust < 12)[$astarion Yes, yes. You're very nice.
$astarion There's just competition now.
](else:)[$astarion I mean apart from you.
$astarion Obviously.
]](elseif: $just_said is "shadowheart")[(if: $astarion_learned_dream is not 0)[$astarion Yes. That seems likely.
](else:)[$astarion Pretentious sort of a name. Did she pick it herself?
]]$astarion Anyway. This doesn't exactly help us with the barred, lockless monster of a door in the wall over there.
(if: $sarcophagus_open is true)[$astarion But it feels like the sort of thing you give someone who might soon encounter different doors, doesn't it?](else:)[$astarion But that grave in the center of this room is about to get robbed.(set: $asked_list to it+"open-sarcophagus")(set: $astarion_working_on to "sarcophagus")]
|returnBase>[Continue]{
}](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
|gray4>[Try to see it clearly.] (click: ?gray4)[//This one is too far away. You can't make it out yet.//]
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's a sketch of a bottle. Filled with liquid that's colored faintly crimson.
It's very faint though. You've spotted it as it's only just beginning to exist.
|gray4>[Try to see it clearly.] (click: ?gray4)[//This one is too far away. You can't make it out yet.//]
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[
](elseif: $sequence is 3)[Astarion finds a small bottle of blood in one of the burial niches.
He snatches it up, starts to open it, then stops.
$astarion It's human.
|next>[Continue]{
}](elseif: $sequence is 4)[He laughs. It's shrill and wavers at the end.
$astarion There's blood in this room and <i>I can't drink it.</i>
He drops it. It falls to the ground with a soft 'clink'.
He walks to the opposite corner of the room, as far away as he can get from the bottle, and covers his face.
|talkAboutBlood>[Go to Astarion.]
|next>[Examine the bottle.]
|skip2>[Don't get involved in this.]{
(display: "set mood tense")
}](elseif: $sequence is 5)[It's a small bottle of thick, relatively durable glass.
It's full of blood.
<span id="durge" class="energy-link" data-content="[DARK URGE] What kind of blood?/Touch/0/6/0"></span>
<span class="explain">Choosing this option will change something about your character.</span>
|talkAboutBlood>[Go to Astarion.]
|skip>[Don't get involved in this.]{
}](elseif: $sequence is 6)[Human. Male. Relatively fresh.
All of your companions have bled around you, so you can easily tell--this belongs to Wyll.
|talkAboutBlood>[Go to Astarion.]
|next>[Don't get involved in this.]{
(set: $player_dark_urge to true)
}](elseif: $sequence is 7)[This seems complicated, and you either don't think you can help with it, or don't want to.
Astarion's ignoring the bottle of blood. So you'll do the same.
|returnTomb>[Continue]{
}
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[Astarion is hunched.
He has his hands over his nose and mouth, like he's trying to stifle his ability to breathe and smell.
<span id="blood" class="energy-link" data-content="Speak: Blood./Speech/2/11"></span>
<span id="wrong" class="energy-link" data-content="Speak: What`s wrong?/Speech/3/11"></span>
<span id="human" class="energy-link" data-content="Speak: Human blood?/Speech/3/11"></span>
<span id="why" class="energy-link" data-content="Speak: Why not drink?/Speech/4/11"></span>
<span id="tap" class="energy-link" data-content="Tap on stone./Touch/1/12"></span>(if: $speech is 1)[
<span id="whisper" class="energy-link" data-content="Whisper./Speech/1/12"></span>]{
(set: $astarion_interacted to true)
}](elseif: $sequence is 11)[(if: $just_said is "blood")[$astarion Yes. Yes, I am VERY aware of it.
](elseif: $just_said is "wrong")[$astarion There's blood in this room.
$astarion I can smell it and I can't <i>drink</i> it.
](elseif: $just_said is "human")[$astarion Yes. Human. Young.
$astarion There's an undertone to it. Brimstone. Perhaps some tiefling ancestry.
$astarion Very healthy.
$astarion It would taste very, very good.
](elseif: $just_said is "why")[$astarion It's against the rules.
$astarion I still have...
]
|next>[Continue]{
}](elseif: $sequence is 12)[Astarion sighs.
$astarion This must seem confusing from the outside.(if: $mouse_location is "astarion")[ Particularly after the mouse.]
$astarion Vampire spawn, that would be me, must obey the rules set by the one who made them.
$astarion One of the rules. The first order he ever gave me--
$astarion Thou shalt not drink the blood of thinking creatures.
<span id="oh" class="energy-link" data-content="Speak: Oh./Speech/2/+1"></span>
<span id="damn" class="energy-link" data-content="Speak: Damn./Speech/2/+1"></span>
<span id="youHave" class="energy-link" data-content="Speak: But you have./Speech/4/20"></span>
|next>[Do nothing.]{
}](elseif: $sequence is 13)[$astarion So. Some well meaning idiot has bled for me.
$astarion I can't drink it.
$astarion So now I am going to sit here and smell it until it clots.
<span id="try" class="energy-link" data-content="Speak: Try?/Speech/2/+1"></span>
<span id="sorry" class="energy-link" data-content="Speak: Sorry./Speech/2/14"></span>
<span id="dream" class="energy-link" data-content="Speak: Dream./Speech/2/15"></span>
<span id="doneThis" class="energy-link" data-content="Speak: You`ve done this./Speech/4/20"></span>
<span id="touch" class="energy-link" data-content="Touch hand./Touch/1/14">
<span id="nothing" class="energy-link" data-content="Do nothing/Touch/0/14/0">{
}](elseif: $sequence is 14)[ (if: $just_said is "sorry")[(if: $astarion_trust > 9)[$astarion It's not your fault.
]$astarion Just leave it. Just pretend it's not there.
|returnTomb>[Continue]{
}](elseif: $just_said is "touch")[Astarion brushes the contact away.
$astarion Not now.
$astarion Just leave it. Just pretend it's not there.
|returnTomb>[Continue]{
}](elseif: $just_said is "try")[(if: $what_is_player is "ghost")[$astarion Why don't you try to be alive again?](else:)[$astarion Why don't you try to be real?
$astarion A real person, not whatever shell of a thing you are.]
$astarion Try very hard. I'm sure the effort will make a difference.
(if: $astarion_trust > 7)[(if: $astarion_trust > 12)[$astarion ...sorry.](else:)[After a moment, he looks like he regrets saying that.]
$astarion I could try. But it's never worked before.
](else:)[$astarion It's not a matter of trying.
]
<span id="try" class="energy-link" data-content="Speak: Try./Speech/2/25"></span>
<span id="pleaseTry" class="energy-link" data-content="Speak: Please try./Speech/3/25"></span>
<span id="dream" class="energy-link" data-content="Speak: Dream./Speech/2/15"></span>
<span id="doneThis" class="energy-link" data-content="Speak: You`ve done this./Speech/4/20"></span>
<span id="nevemind" class="energy-link" data-content="Speak: Nevermind./Speech/2/14"></span>
<span id="nothing" class="energy-link" data-content="Do nothing/Touch/0/14/0">{
}](else:)[Astarion seems uncertain for a moment, but then shakes his head.
$astarion Just leave it. Just pretend it's not there.
|returnTomb>[Continue]
]{
(set: $mentioned_dream to false)
(set: $mentioned_happened_before to false)
}](elseif: $sequence is 15)[(if: $astarion_learned_dream > 0)[$astarion Right.
$astarion This is a dream.
$astarion So you've said.
](else:)[$astarion ...(set: $astarion_learned_dream to $day)
$astarion That was a bit of a non-sequitur.
$astarion Do you mean...
Astarion sinks into pensive silence for a little while.
]
<span id="continue" class="energy-link" data-content="Continue./Touch/0/16/0">{
(set: $mentioned_dream to true)
}](elseif: $sequence is 16)[$astarion Things have been very strange lately.
$astarion And not always in terrible ways. Which is novel.
$astarion And I do, of course, like breaking rules.
$astarion I would very much like to break certain rules.
<span id="try" class="energy-link" data-content="Speak: Try./Speech/2/25"></span>
<span id="nothing" class="energy-link" data-content="Don`t say anything./Touch/0/25/0">{
}](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[$astarion ...
$astarion Expand on that.
<span id="drank" class="energy-link" data-content="Speak: Drank from me./Speech/4/+1"></span>
<span id="dream" class="energy-link" data-content="Speak: Outside dream./Speech/3/15"></span>
<span id="tadpoles" class="energy-link" data-content="Speak: Tadpoles change rules./Speech/4/+1"></span>{
(set: $mentioned_happened_before to true)
}](elseif: $sequence is 21)[(if: $just_said is "drank")[$astarion Have I?
(if: $player_killed_by is "astarion")[$astarion Is that how I...
$astarion Nevermind.
](elseif: $what_is_player is "ghost")[$astarion Is that how you...
$astarion Nevermind.
](else:)[$astarion But you're not...
$astarion You said you aren't a ghost.
$astarion Nevermind. It's not important.
]
<span id="continue" class="energy-link" data-content="Continue./Touch/0/16">{
}](elseif: $just_said is "tadpoles")[$astarion You say the most ridiculous things sometimes.
(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He mutters under his breath:
$astarion_name And it's even more ridiculous that they <i>sound</i> correct.](else:)[He mutters something to himself. <span class="italicEmph">//Requires Sight: 3//</span>]
]<span id="continue" class="energy-link" data-content="Continue./Touch/0/16/0">{
}](elseif: $sequence is 22)[
](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[(if: $astarion_trust < 10 and $mentioned_dream is false and $mentioned_happened_before is false)[$astarion No. That's stupid. You aren't listening, you idiot $player_term.<script>updateTrust(-1);</script>
$astarion Go away.(set: $astarion_refuse_interaction to true)
|returnTomb>[Continue]
](elseif: $astarion_trust < 6)[$astarion No. No, this isn't going to work.
$astarion Just leave it. Just pretend it's not there.
$astarion Talk about something else.
|returnTomb>[Continue]
](else:)[{
(set: $days_known_dream to 0)
(set: $drink_result to "failure")
(if: $astarion_learned_dream > 0 or $mentioned_dream is true)[
(set: $days_known_dream to $day - $astarion_learned_dream)
(set: $dream_score to $days_known_dream)
(if: $mentioned_happened_before is true)[(set: $dream_score to it+5)]
(if: $mentioned_dream is true)[(set: $dream_score to it+1)]
(if: $dream_score > 13)[(set: $drink_result to "drink entire")]
(elseif: $dream_score > 8)[(set: $drink_result to "drink half")]
(elseif: $dream_score > 5)[(set: $drink_result to "sip")]
(else:)[(set: $drink_result to "failure")]
]
}(if: $mentioned_dream is false and $mentioned_happened_before is false)[$astarion I have no idea why you think this is going to work.
](elseif: $drink_result is "failure")[$astarion I don't...it doesn't feel like this is going to work.
](elseif: $drink_result is "sip")[$astarion I'm not...sure this is going to work.
](else:)[$astarion I'm not sure this is going to work.
]
(if: $astarion_trust < 10)[$astarion Pushing against the rules never worked before, and it feels like being...
He makes a quiet hissing noise.](else:)[$astarion It's never worked before and when I push against the rules, I feel them.
$astarion They feel like hands all over me.]
(if: $mentioned_dream is true and $astarion_learned_dream is $day)[<span class='self'>//Astarion just learned that he is dreaming.//</span>
](elseif: $astarion_learned_dream is 0)[<span class='self'>//Astarion is not aware he is dreaming.//</span>
](else:)[<span class='self'>//Astarion has been aware of the dream for $days_known_dream day(if: $days_known_dream is not 1 )[s].//</span>
](if: $mentioned_happened_before is true)[<span class='self'>//Astarion is aware that he has done this before.//</span>
]
<span id="try" class="energy-link" data-content="Speak: Try./Speech/2/28"></span>
<span id="dont" class="energy-link" data-content="Speak: Don`t./Speech/2/26"></span>
<span id="decide" class="energy-link" data-content="Let him decide./Touch/0/27/0">
]](elseif: $sequence is 26)[Astarion shakes his head.(if: $sight > 2)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He looks torn between relief and disappointment.]
$astarion I'm just going to leave it.
$astarion Pretend it's not there.
$astarion Talk about something else.
|returnTomb>[Continue]{
}](elseif: $sequence is 27)[Astarion stews in thoughtful, fretful silence for a while.
Staring across the tomb and trying not to breathe.
(if: $drink_result is "failure" or $drink_result is "sip")[<span id="continue" class="energy-link" data-content="Continue./Touch/0/26/0">
](else:)[<span id="continue" class="energy-link" data-content="Continue./Touch/0/28/0">
]{
}](elseif: $sequence is 28)[Astarion stands. He walks across the room to the bottle of blood and picks it up from where it fell.
He pauses for a moment, as if bracing himself. Then he opens the bottle and tries to drink it.
It's a little strange to watch, like a pantomime. He moves as if there are invisible hands on his wrists and jaw.
As if he has to struggle against them to do this.
(if: $drink_result is "failure")[<span id="continue" class="energy-link" data-content="Continue./Touch/0/30/0">
](elseif: $drink_result is "sip")[<span id="continue" class="energy-link" data-content="Continue./Touch/0/32/0">
](elseif: $drink_result is "drink half")[<span id="continue" class="energy-link" data-content="Continue./Touch/0/33/0">
](elseif: $drink_result is "drink entire")[<span id="continue" class="energy-link" data-content="Continue./Touch/0/34/0">
]{
}](elseif: $sequence is 29)[
](elseif: $sequence is 30)[Eventually, he loses.
His hands are trembling and twitching as they lower the bottle and seal the cap. There are red rings faintly visible around his wrists. Two glowing bracelets of symbols.
The glow lasts for a few moments more, red symbols flickering.
Then they fade and he seems to be in control of his body again.
|next>[Continue]{
}](elseif: $sequence is 31)[He screams.
He hurls the bottle against the wall.
It shatters, painting the stone bright red.
Astarion retreats to the far corner of the room and covers his face with his hands.
|returnTomb>[Continue]{
(set: $astarion_refuse_interaction to true)
(set: $blood_intensity to 4)
(set: $blood_state to "wall")
}](elseif: $sequence is 32)[He's losing, but there's a moment.
He wrenches his head forward and gets perhaps a spoonful of blood into his mouth.
(set: $health_change to 3)(display: "update health")
|bloodSpilled>[Continue]{
(set: $astarion_hands to "healed")
}](elseif: $sequence is 33)[Eventually, narrowly, he wins.
He gulps down a mouthful of the blood, smearing the side of his mouth red.
(set: $health_change to 5)(display: "update health")
|bloodSpilled>[Continue]{
(set: $astarion_hands to "healed")
}](elseif: $sequence is 34)[Eventually, he wins.
He gulps down the blood, smearing the side of his mouth red.
(set: $health_change to 10)(display: "update health")
|noBloodSpilled>[Continue]{
(set: $astarion_hands to "healed")
}](elseif: $sequence is 35)[
](elseif: $sequence is 36)[
](elseif: $sequence is 37)[Then the invisible hands wrench the bottle away from his face.
It shatters against the ground, painting the stone bright red.
|next>[Continue]{
(set: $blood_intensity to 3)
(set: $blood_state to "floor")
}](elseif: $sequence is 38)[Astarion barely seems to notice. He touches the side of his mouth.
$astarion That was...
$astarion Did you see what I did?
$astarion Did you see what I <i>did?</i>
He starts laughing.
He eventually sits down, still laughing.
|returnTomb>[Continue]{
(set: $astarion_mood to "excited")
(set: $vampire_enrichment_score to it+10)
(set: $blood_drank to true)
}](elseif: $sequence is 39)[
](elseif: $sequence is 40)[Then the invisible hands wrench the bottle away from his face.
It shatters against the ground, but it's empty.
Just some broken glass.
|next>[Continue]{
(set: $blood_intensity to 0)
(set: $blood_state to "gone")
}](elseif: $sequence is 41)[$astarion That was...that was amazing.
$astarion Did you see what I did?
$astarion Did you see what I <i>did?</i>
He starts laughing.
He eventually sits down, still laughing.
|returnTomb>[Continue]{
(set: $astarion_mood to "excited")
(set: $vampire_enrichment_score to it+10)
(set: $blood_drank to true)
}](elseif: $sequence is 42)[
](elseif: $sequence is 43)[
](elseif: $sequence is 44)[
]{
(click: ?talkAboutBlood)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?bloodSpilled)[(set: $sequence to 37)(go-to: $currentPassage)]
(click: ?noBloodSpilled)[(set: $sequence to 40)(go-to: $currentPassage)]
}(if: $sequence is 0)[<span class="softEmph">`[Unlocked: Sight 5]`</span> Your rest is disturbed as you become aware of another presence in the room.
There is a spectral woman in a long tattered dress. Her hands are gnarled and clawlike. She's floating towards Astarion. As she reaches towards him, foul green energy curls around her fingers.
He seems entirely unaware of her.
(if: $speech is 6)[<span id="shoutDanger" class="energy-link" data-content="Shout: Danger!/Speech/6/+1/1"></span>](else:)[<span id="sayDanger" class="energy-link" data-content="Speak: Danger./Speech/2/+1/1"></span>]
(if: $speech is 6)[<span id="shoutLookout" class="energy-link" data-content="Shout: Look out!/Speech/6/+1/1"></span>](else:)[<span id="sayLookout" class="energy-link" data-content="Speak: Look out./Speech/3/+1/1"></span>]
(if: $touch > 2)[<span id="shake" class="energy-link" data-content="Frantically shake Astarion`s shoulder./Touch/3/+1/1"></span>](else:)[<span id="tap" class="energy-link" data-content="Frantically tap Astarion`s shoulder./Touch/3/+1/3"></span>]
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
(set: $astarion_grappled to true)
(set: $enemyName to "Vengeful Ghost")
(set: $enemyNameText to "ghost")
(set: $enemyHealth to 32)
(set: $enemyMaxHealth to 32)
(set: $enemyHealthDisplay to true)
(set: $healthDisplay to true)
}](elseif: $sequence is 1)[(if: $just_said is "nothing")[Astarion seems to become vaguely aware of the specter as she draws close. He looks in her direction.(if: $astarion_trust > 9)[ He smiles faintly.]
(if: $astarion_trust is 20)[Then his expression tenses.
$astarion ...
$astarion You're not $player_name. (set: $know_ghost_not_player to true)
](elseif: $achievement_tav_names contains $player_name)[$astarion $player_name? What are you...
](elseif: $morning_joke_count > 5)[$astarion Good morning. What are y...
](else:)[$astarion Hello. What are you...
]He is cut off as she wraps her claws around his throat.
<span class='health'>//Astarion Lost 6 Health//</span>(set: $health_change to -6)(display: "update health silent")
|startFight>[Rolling initiative.]{
}](else:)[You warn Astarion before the ghost reaches him. He scrambles back and her claws close on empty air.
His eyes flicker wildly about the room, between where you are and where the ghost is. He's still unable to clearly see either of you, but seems aware there is a distinction between the two invisible things in the room.
And that one of them is trying to kill him.(set: $know_ghost_not_player to true)
|startFight>[Rolling initiative.]{
(set: $astarion_grappled to false)
}]](elseif: $sequence is 2)[While you rest, you hear Astarion talking. But not to you.
(if: $astarion_trust is 20)[$astarion ...
$astarion You're not $player_name. (set: $know_ghost_not_player to true)
He's about to say more, but something cuts him off.
](else:)[(if: $achievement_tav_names contains $player_name)[$astarion $player_name? What are you...
](elseif: $morning_joke_count > 5)[$astarion Good morning. What are y...
](else:)[$astarion Hello. What are you...
]
He is cut off abruptly.]
<span class='health'>//Astarion Lost 6 Health//</span>(set: $health_change to -6)(display: "update health silent")
|startFight>[Continue]{
(set: $astarion_grappled to true)
}](elseif: $sequence is 3)[What name do you say?
<input type="text" id="ghostNameInput" name="fname" value="Ghost">
|sayName>[Speak this name. //<span class="energy">1</span>//]
|notThis>[Something else.]
{
(set: $ghost_name to "Ghost")
(set: $ghost_name_lowercase to "ghost")
(click: ?notThis)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?sayName)[
(set: $sequence to 8)
<script>
reduceEnergy();
var ghost_name = $("#ghostNameInput").val();
seth("ghost_name",ghost_name);
seth("ghost_name_lowercase",ghost_name.toLowerCase());
seth("just_said","ghostName");
</script>
(go-to: $currentPassage)
]
}](elseif: $sequence is 4)[
](elseif: $sequence is 5)[{
(set: $round_number to 0)
(set: $enemyName to "Vengeful Ghost")
(set: $enemyNameText to "ghost")
(set: $enemyHealth to 32)
(set: $enemyMaxHealth to 32)
(set: $enemyHealthDisplay to true)
(set: $healthDisplay to true)
(set: $ghost_distract_count to 0)
(set: $said_ghost_name to false)
(set: $next_round_text to "Next Round")
(display: "Calculate Weapon Damage")
(if: $know_ghost_not_player is false)[<script>updateTrust(-5);</script>]
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
There is a spectral woman in a long tattered dress. (if: $astarion_grappled is true)[Her hands are wrapped around Astarion's throat.(set: $enemy_action to "release")](else:)[She is trying to claw at Astarion.(set: $enemy_action to "claw")]
(if: $astarion_inventory contains 'ring')[Astarion is trying to activate the ring on his finger.(set: $astarion_action to "activate ring")
](elseif: $astarion_inventory contains 'knife')[Astarion is scrambling for his knife.(set: $astarion_action to "knife stab")
](else:)[Astarion is scrambling for a sharp shard of pottery.(set: $astarion_action to "shard stab")
]
<span id="examine" class="energy-link" data-content="Examine ghost./Touch/0/+1/0"></span>
(display: "Attack Ghost Options")
(if: $speech is 6)[<span id="shoutStop" class="energy-link" data-content="Shout: Stop!/Speech/6/+1/1"></span>](else:)[<span id="sayStop" class="energy-link" data-content="Speak: Stop./Speech/2/+1/1"></span>]
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 6)[<span class="emph">//Your Turn//</span>
(if: $just_said is "sayStop")[Your quiet words are lost in the chaos.
](if: $just_said is "shoutStop")[The ghost doesn't heed you. Astarion is distracted.
](if: $just_said is "examine")[You examine the ghost. She is a haunted, ethereal creature. Just barely physical enough to hurt and be hurt. Her hair is wild and floats around her as if she were submerged in water. The symbol on her dress matches the crest on the sarcophagus. Her eyes gleam in the dark and are mindless with hate.
(if: $sight > 3)[<span class="softEmph">`[Unlocked: Sight 4]`</span> There are marks on her throat like hand-prints. The letter E has been embroidered on the collar of her dress.](else:)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 4</span>//]
](display: "Default Action Results"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "activate ring")[Astarion activates the ring in a spray of brilliant color.
The ghost is momentarily blinded. Astarion takes advantage of that and stabs her particularly effectively. <span class='health'>//Ghost Lost (print: $astarion_weapon_damage + $astarion_sneak_damage) Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)(set: $enemy_damange to it+$astarion_sneak_damage)(set: $enemy_action to "reeling")
](elseif: $astarion_action is "knife stab")[Astarion has enough of a sense of where the ghost is to stab her with his knife. <span class='health'>//Ghost Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
](elseif: $astarion_action is "shard stab")[Astarion has enough of a sense of where the ghost is to stab her with his sharpened shard of pottery. <span class='health'>//Ghost Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]<span class="emph">//Vengeful Ghost's Turn//</span>(display: "Check Enemy Death")
(if: $enemy_action is "release")[The ghost flinches back, letting go of Astarion.
](if: $enemy_action is "reeling")[The ghost reels back, blinded.
](if: $enemy_action is "claw")[The ghost claws at Astarion. <span class='health'>//Astarion Lost 6 Health//</span>(set: $astarion_damange to it+6)
]
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 7)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost is trying to claw at Astarion.(set: $enemy_action to "claw")
Astarion is trying to stab the ghost.(set: $astarion_action to "stab")
(if: $energy > 0)[<span id="sayName" class="energy-link" data-content="Say the ghost`s name./Speech/2/3/0"></span>](else:)[<span id="sayName" class="energy-link" data-content="Say the ghost`s name./Speech/2/3/1"></span>]
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 8)[<span class="emph">//Your Turn//</span>
(if: $just_said is "ghostName")[(if: $speech is 6)[You shout: $ghost_name](else:)[You say: $ghost_name].
(if: $ghost_name_lowercase contains "halchair" and $ghost_name_lowercase contains "edwina" and $speech is 6)[The ghost stops attacking and turns to stare at you, completely distracted.(set: $enemy_action to "distracted")(set: $said_ghost_name to true)
](elseif: $ghost_name_lowercase contains "halchair" and $ghost_name_lowercase contains "edwina")[The ghost pauses mid-attack. Her empty eyes flicker with recognition.(set: $enemy_action to "pausing")(set: $said_ghost_name to true)
](elseif: $ghost_name_lowercase contains "halchair" or $ghost_name_lowercase contains "edwina")[(if: $speech is 6)[The ghost pauses mid-attack. Her empty eyes flicker with recognition.(set: $enemy_action to "pausing")(set: $said_ghost_name to true)
](else:)[The ghost twitches and glances towards you. She recognized some aspect of what you said, but it was too soft or incomplete to draw her attention.
]](else:)[The ghost ignores you.
]](display: "Default Action Results"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "stab" and $enemy_action contains "distracted")[The ghost is distracted. Astarion takes advantage of that and stabs her particularly effectively. <span class='health'>//Ghost Lost (print: $astarion_weapon_damage + $astarion_sneak_damage) Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)(set: $enemy_damange to it+$astarion_sneak_damage)
](elseif: $astarion_action is "stab")[Astarion stabs at ghost. <span class='health'>//Ghost Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]<span class="emph">//Vengeful Ghost's Turn//</span>(display: "Check Enemy Death")
(if: $enemy_action is "distracted")[The ghost is completely distracted, and does nothing.
](if: $enemy_action is "pausing")[The ghost isn't attacking this round.
](display: "Default Ghost Results")
|nextRoundSpecial>[$next_round_text]{
(display: "Round Ends")
(click: ?nextRoundSpecial)[
(if: $enemyHealth is 0)[(set: $sequence to 0)(go-to: "After The Ghost")]
(elseif: $astarion_trust > 6 and $know_ghost_not_player is false)[(set: $sequence to 9)(go-to: $currentPassage)]
(else:)[(set: $sequence to 11)(go-to: $currentPassage)]
]
}](elseif: $sequence is 9)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost is trying to claw at Astarion.(set: $enemy_action to "claw")
Astarion is trying to talk to the ghost.(set: $astarion_action to "talk")
$astarion Stop. //Stop.// Why are you //doing// this?
(if: $speech is 6)[<span id="shoutNotMe" class="energy-link" data-content="Shout: That`s not me!/Speech/6/+1/1"></span>](else:)[<span id="sayNotMe" class="energy-link" data-content="Speak: That`s not me./Speech/4/+1/1"></span>]
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 10)[<span class="emph">//Your Turn//</span>
(if: $just_said is "shoutNotMe" or $just_said is "sayNotMe")[Astarion hears you. His eyes flicker wildly between where you are and where the ghost is. He's still unable to clearly see either of you, but realizes there's a difference.(set: $know_ghost_not_player to true)
(if: $astarion_trust > 9)[He looks unbearably relieved. ]He decides to stab the ghost.(set: $astarion_action to "stab")
](display: "Default Action Results"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "talk")[(if: $astarion_trust > 10)[$astarion I don't want to //do// this.
$astarion Why are you //doing// this?
](else:)[$astarion Calm down! Could you just...
$astarion What happened? What's //wrong?//
]](elseif: $astarion_action is "stab")[Astarion stabs at ghost. <span class='health'>//Ghost Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]<span class="emph">//Vengeful Ghost's Turn//</span>(display: "Check Enemy Death")
(display: "Default Ghost Results")
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 11)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost is trying to claw at Astarion.(set: $enemy_action to "wail")
Astarion is about to disengage and hide.(set: $astarion_action to "hide")
(if: $speech is 6)[<span id="shoutAtGhost" class="energy-link" data-content="Try to distract the ghost with shouting./Speech/6/+1/1"></span>](else:)[<span id="speakAtGhost" class="energy-link" data-content="Try to distract the ghost with chatter./Speech/4/+1/2"></span>]
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 12)[<span class="emph">//Your Turn//</span>
(if: $just_said is "shoutAtGhost" or $just_said is "speakAtGhost")[You try to distract the ghost with words.(if: $said_ghost_name is true)[ You even throw in her name a few times.] But she pays no attention to you.
](display: "Default Action Results"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "hide")[Astarion jumps back from the ghost and darts around it. He ducks into the shadows by the sarcophagus.
]<span class="emph">//Vengeful Ghost's Turn//</span>(display: "Check Enemy Death")
(if: $ghost_distract_count > 2)[The ghost turns away from Astarion for a moment to lash out at you. <span class='health'>//$player_name Lost 3 Energy//</span>(set: $player_damange to it+3)(set: $ghost_distract_count to 0)(set: $enemy_action to "empty")
](if: $enemy_action is "wail")[The ghost wails and starts to search the room.
](display: "Default Ghost Results")
|nextRoundSpecial>[$next_round_text]{
(display: "Round Ends")
(click: ?nextRoundSpecial)[
(if: $enemyHealth is 0)[(set: $sequence to 0)(go-to: "After The Ghost")]
(elseif: $sarcophagus_open is true and $know_ghost_not_player is true)[(set: $sequence to 13)(go-to: $currentPassage)]
(else:)[(set: $sequence to 15)(go-to: $currentPassage)]
]
}](elseif: $sequence is 13)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost is searching for Astarion.(set: $enemy_action to "search")
Astarion starts creeping around the side of the sarcophagus to attack the ghost from hiding, but then he pauses. He glances inside the sarcophagus at the corpse--which has long hair and a tattered dress. Just like the ghost.
Astarion is about to stab the corpse in the sarcophagus.
<span id="yes" class="energy-link" data-content="Speak: YES./Speech/2/+1/1"></span>
<span id="veryYes" class="energy-link" data-content="Speak: Yes do that!/Speech/4/+1/1"></span>
<span id="willWork" class="energy-link" data-content="Speak: Will that work?/Speech/4/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 14)[<span class="emph">//Your Turn//</span>
(if: $just_said is "nothing")[You do nothing.
](else:)[You speak. Astarion glances briefly in your direction.
]<span class="emph">//Astarion's Turn//</span>
Astarion rises over the edge of the sarcophagus and leans foward to viciously and repeatedly stabs the corpse inside.
<span class="emph">//Vengeful Ghost's Turn//</span>
The ghost wails as wounds begin to appear all over her body. <span class='health'>//Ghost Lost $enemyHealth Health//</span>(set: $enemy_damange to it+$enemyHealth)
She is quickly torn to tatters, and fades away into nothingness.
|nextRound>[$next_round_text]{
(display: "Check Enemy Death")
(display: "Round Ends")
}](elseif: $sequence is 15)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost is searching for Astarion.(set: $enemy_action to "howl")
Astarion is about to attack the ghost from hiding, but now that he's distant from it, he only seems to have a vague sense of where it is.(set: $astarion_action to "poor ambush")
(if: $speech is 6)[<span id="shoutOverHere" class="energy-link" data-content="Shout: Over here!/Speech/6/+1/1"></span>](else:)[<span id="sayOverHere" class="energy-link" data-content="Speak: Over here./Speech/3/+1/1"></span>]
(if: $touch > 2)[<span id="slapGround" class="energy-link" data-content="Slap the ground where she is./Touch/3/+1/1"></span>](else:)[<span id="tapGround" class="energy-link" data-content="Tap the ground where she is./Touch/3/+1/1"></span>]
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 16)[<span class="emph">//Your Turn//</span>
(if: $just_said is "shoutOverHere")[You move towards the ghost and shout at Astarion, drawing his attention towards her.(set: $astarion_action to "ambush")(if: $know_ghost_not_player is false)[
He's visibly confused for a moment, then seems to realize something.(set: $know_ghost_not_player to true)]
](if: $just_said is "sayOverHere")[You move towards the ghost and speak, trying to attract Astarion's attention. You speak too softly to be clearly understood, but he must have heard something because he's looking towards you and the ghost.(set: $astarion_action to "ambush")
](if: $just_said is "slapGround")[You move towards the ghost and slap the ground near the hem of her dress. Astarion is now looking towards you and the ghost.(set: $astarion_action to "ambush")
](if: $just_said is "tapGround")[You move towards the ghost and tap the ground near the hem of her dress. But it's too quiet and Astarion doesn't notice.
](display: "Default Action Results"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "ambush")[Astarion ambushes the ghost, taking her completely by surprise. <span class='health'>//Ghost Lost (print: $astarion_weapon_damage + $astarion_sneak_damage) Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)(set: $enemy_damange to it+$astarion_sneak_damage)
](elseif: $astarion_action is "poor ambush")[Astarion tries to ambush the ghost, but has a poor sense of where she is, so ends up just stabbing her. <span class='health'>//Ghost Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]<span class="emph">//Vengeful Ghost's Turn//</span>(display: "Check Enemy Death")
(if: $ghost_distract_count > 2)[The ghost turns away from Astarion for a moment to lash out at you. <span class='health'>//$player_name Lost 3 Energy//</span>(set: $player_damange to it+3)(set: $ghost_distract_count to 0)(set: $enemy_action to "empty")
But then she turns back to Astarion. She grabs at him, hand closing around his wrist so that she won't lose track of him again.
](if: $enemy_action is "howl")[The ghost howls and grabs at Astarion, hand closing around his wrist so that she won't lose track of him again.
](display: "Default Ghost Results")
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 17)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The ghost has a hold on Astarion and is clawing at him.(set: $enemy_action to "claw")
Astarion is going to stab she until she dies.(set: $astarion_action to "all stabs")
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 18)[<span class="emph">//Your Turn//</span>
(display: "Default Action Results"){
(set: $remaining_health to $enemyHealth-$enemy_damange)
(if: $remaining_health < 0)[(set: $remaining_health to 0)]
(set: $enemy_damange to $enemyHealth)
}<span class="emph">//Astarion's Turn//</span>
Astarion is wildly stabbing the ghost until she falls to pieces. <span class='health'>//Ghost Lost $remaining_health Health//</span>
She claws back, and he takes about as much damage as she does. <span class='health'>//Astarion Lost $remaining_health Health//</span>(set: $astarion_damange to $remaining_health)
|nextRound>[End Combat]{
(display: "Check Enemy Death")
(display: "Round Ends")
}](elseif: $sequence is 19)[
](elseif: $sequence is 20)[
](elseif: $sequence is 21)[
]{
(click: ?startFight)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?nextRound)[
(if: $enemyHealth is 0)[(set: $sequence to 0)(set: $active_event to "empty")(go-to: "After The Ghost")]
(else:)[(set: $sequence to it+1)(go-to: $currentPassage)]
]
}{
(set: $enemyHealth to $enemyHealth + $enemy_health_change)
(if: $enemyHealth > $enemyMaxHealth)[(set: $enemyHealth to $enemyMaxHealth)]
(if: $enemyHealth < 0)[(set: $enemyHealth to 0)]
(if: $enemyHealth is 0)[(set: $enemy_action to "die")(set: $leon_action to "die")]
}(if: $sequence is 0)[Astarion is fluttering his hand through the space you occupy.
It feels <i>very</i> strange.
<span id="what" class="energy-link" data-content="Speak: What?/Speech/2/+1"></span>
<span id="see" class="energy-link" data-content="Speak: You see me?/Speech/4/+1"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/+1"></span>
|skip>[Get up and follow him.]{
}](elseif: $sequence is 1)[(if: $just_said is "what")[$astarion I think I've found one of those things that's been appearing.
$astarion But it hasn't appeared yet.
$astarion Come <i>look.</i>
](elseif: $just_said is "see")[$astarion No.
$astarion It's just...
$astarion Obviously you're there.
$astarion It's not important. Come look at this thing.
](elseif: $just_said is "touch")[$astarion There you are.
$astarion I think I've found one of those things that's been appearing.
$astarion Come over to the door.
]
|next>[Continue]{
}](elseif: $sequence is 2)[You follow Astarion to the sarcophagus.
<span class="text-shimmer-long">Something shimmers</span> on top of the sarcophagus lid. The trace of an object that doesn't quite exist yet.
It's a half-unrolled piece of parchment. There's a picture at the top. A door with a starburst in the center.
(if: $class is "wizard" or $class is "sorcerer" or $class is "warlock" or $class is "bard")[You recognize this. It's a scroll of Knock. A spell for opening things.](else:)[You recognize this. It's a spell scroll. And the spell is for opening things.]
|likeDoors>[Like doors.](if: $class is "wizard" or $class is "sorcerer" or $class is "warlock" or $class is "bard")[
|next>[`[SPELLCASTER]` Like doors, but there are limitations to this spell.]]{
}](elseif: $sequence is 3)[Knock is a spell used to unlock an object. The target can be a door, a box, a set of manacles, or another object containing a mundane or magical mechanism that prevents access.
The spell, as generally inscribed, only works on locks. This door is not locked. (if: $been_to_hallway is true)[It is barred.](else:)[Sealed somehow.]
Oh, but it looks like whoever made this scroll used the more powerful version of Knock, which can unlock, unstick, or unbar closed objects.
|likeDoors>[That should be fine then.](if: $class is "wizard")[
|next>[`[WIZARD]` But there's another problem.]]{
}](elseif: $sequence is 4)[Even if this is a version of Knock that opens more than locks, it will still only open one aspect of the closed door. If the door is secured in more than one way this spell may not work.
Oh, but it looks like another wizard made this and included a divinatory switch statement for detecting the primary impediment.
And also adjusted the transmutive force by five percent so that there will be projective impact on casting.
|next>[That should be fine then.]{
<script>addAchieve("Roll Arcana");</script>
<script>addAchieve("Um Actually");</script>
}](elseif: $sequence is 5)[As you and Astarion examine the flickering silhouette of a scroll, it solidifies. Becomes an actual scroll.
Astarion snatches it up. He unrolls it. He walks quickly over to the huge, stone door.
He hesitates.
|next>[Continue]{
}](elseif: $sequence is 6)[Hesitates, because on the other side of that door is |exp1>[the rest of his backstory.](click: ?exp1)[ //You've seen a hallway's worth of it.//]
A household inhabited by |exp2>[the person who did this to him.](click: ?exp2)[ //And by all the other people who let it happen.//]
As he hesitates, he fiddles with the paper.
He notices writing on the back of the scroll.
|next>[It's a letter.]{
}](elseif: $sequence is 7)[<i>The longer this is, the more difficult it will be to send. I will endeavor to be brief.
You are inside of a dream. There is a monster called a Bastellus which generates nightmares and eats the resultant suffering.
There is, by the way such things are designed, a way out. It will be:
- Somewhere meaningful.
- Somewhere that feels like freedom or escape.
We will try to render what assistance we can.
|next>[Good luck.]</i>{
}](elseif: $sequence is 8)[(if: $astarion_learned_dream is 0)[$astarion This is true.
$astarion This is completely mad, but it's also true.
$astarion Did you know? That this was a dream?
<span id="yes" class="energy-link" data-content="Say yes./Speech/0/+1"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0/+1"></span>{
(set: $astarion_learned_dream to 174)
}](else:)[$astarion You told me this.
$astarion That it was all a dream.
$astarion I didn't really believe you.
<span id="itIs" class="energy-link" data-content="Speak: It is./Speech/2/+1"></span>
<span id="told" class="energy-link" data-content="Speak: Told you so./Speech/4/+1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Speech/0/+1/0"></span>{
}]](elseif: $sequence is 9)[(if: $just_said is "yes")[$astarion Hm.
(if: $speech < 2)[$astarion Well, it's not as if you could have told me.](else:)[$astarion Well. If you'd told me, I likely wouldn't have believed you.]
](elseif: $just_said is "no")[$astarion Surprises all around then.
](elseif: $just_said is "told")[$astarion Oh, stop that.
]He examines the note again.
$astarion Somewhere that feels like freedom.
$astarion There's nowhere like that inside of the Szarr Palace.
(if: $astarion_trust > 9)[$astarion Where are we supposed to go?](else:)[$astarion Where am I supposed to go?]
|next>[Continue]{
}](elseif: $sequence is 10)[He spends maybe five seconds thinking about that problem. Trying to compose some sort of plan.
Then he gives up on that. Waves a hand.
(if: $astarion_trust > 9)[$astarion We'll figure it out on the way.](else:)[$astarion I'll figure it out on the way.]
|next>[Continue]{
}](elseif: $sequence is 11)[He flips the scroll over. He begins to read.
The runes glow.
The door glows.
|next>[Continue]{
}](elseif: $sequence is 12)[Outside, you hear the noise of a bar shifting.
(if: $stone_door_oiled is false)[You hear the scream of rust as long-unused hinges are forced to perform their function.
]The door opens.
|act3>[Begin Act 3.]{
(if: $stone_door_oiled is false)[<script>playAudio("aa_doorHinge");</script>]
(else:)[<script>playAudio("aa_door");</script>]
(click: ?act3)[(set: $sequence to 0)(goto: "Act 3")]
}](elseif: $sequence is 13)[Good job importing your game!
|act3>[Go on to Act 3.]{
(click: ?act3)[(set: $sequence to 0)(goto: "Act 3")]
}](elseif: $sequence is 14)[(display: "Tell Me About Your Character")
|menu_credits>[Credits]{
}](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?likeDoors)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}{
(set: $health to $health + $health_change)
(if: $health > $maxHealth)[(set: $health to $maxHealth)]
(if: $health < 0)[(set: $health to 0)]
(if: $health < 1)[(set: $die_next_screen to true)]
}{
(set: $round_number to it+1)
(set: $enemy_damange to 0)
(set: $astarion_damange to 0)
(set: $player_damange to 0)
}{
(if: $astarion_damange > 0)[(set: $health_change to (0-$astarion_damange))(display: "update health combat")]
(set: $energy to $energy - $player_damange)
(if: $energy > $maxEnergy)[(set: $energy to $maxEnergy)]
(if: $energy < 0)[(set: $energy to 0)]
(if: $enemy_damange > 0 or $astarion_damange > 0 or $player_damange > 0)[<script>playAudio("aa_damage");</script>]
}(if: $sequence is 0)[{
(if: $know_ghost_not_player is true)[(set: $sequence to 10)(go-to: $currentPassage)]
(display: "set mood frightened")
(set: $started_uncertain to true)
(set: $astarion_interacted to true)
(if: $energy is 0)[(set: $no_chance_to_talk to true)]
}Astarion backs towards a corner of the room. He still has his weapon out and his eyes are darting around the area where he knows you are.
He's aware he's no longer being attacked, but he still has a sense that there's something he can't see near him.
(if: $astarion_trust > 10)[$astarion Why...why did you do that?
](elseif: $astarion_trust > 5)[$astarion Why did you do that?
](else:)[$astarion Don't come any fucking closer.
]
<span id="no" class="energy-link" data-content="Speak: No./Speech/2/1/1"></span>
<span id="sorry" class="energy-link" data-content="Speak: Sorry./Speech/2/2/1"></span>
<span id="notMe" class="energy-link" data-content="Speak: Not me./Speech/3/4/1"></span>
<span id="ghost" class="energy-link" data-content="Speak: Was a ghost./Speech/4/4/1"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/2/1"></span>
<span id="tap" class="energy-link" data-content="Tap the wall./Touch/1/2/1"></span>
<span id="punch" class="energy-link" data-content="Punch the wall./Touch/6/2/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/3/0"></span>{
(set: $trust_adjustment to 0)
}](elseif: $sequence is 1)[$astarion 'No'?
$astarion What the fuck do you mean 'no'?
<span id="didnt" class="energy-link" data-content="Speak: Didn`t./Speech/2/4/1"></span>
<span id="sorry" class="energy-link" data-content="Speak: Sorry./Speech/2/2/1"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/2/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/3/0"></span>{
}](elseif: $sequence is 2)[(if: $just_said is "punch")[Astarion flinches at the noise, glances at the wall, and then looks warily back towards you.(set: $trust_adjustment to it-3)
|goToSorry>[Continue]{
}](elseif: $just_said is "touch")[Astarion makes a shrill noise and snatches his hand back from the contact.(set: $trust_adjustment to it-5)
It takes him a moment to calm down.
|goToSorry>[Continue]{
}](elseif: $just_said is "tap")[Astarion glances at the wall, uncertain what to make of the sound.
|goToSorry>[Continue]{
}](elseif: $just_said is "sorry")[$astarion Sorry? Ha.<script>updateTrust(2);</script>
$astarion I don't recall ever having someone apologize for savaging me before.
$astarion That's novel.
|goToSorry>[Continue]{
}]](elseif: $sequence is 3)[{
(set: $trust_for_test to $astarion_trust + $trust_adjustment)
}(if: $trust_for_test > 9)[$astarion You've...been here for a while.
$astarion It can do things to your mind.
$astarion I know.
$astarion ...
$astarion Just. Don't. Do that again.
|returnTomb>[Continue]{
}](elseif: $trust_for_test > 5)[$astarion Fine. Whatever. It happens.
$astarion Have you gotten whatever that was out of your system?
$astarion Feel better now that we've both bled?
$astarion If you do it again, I'll find a way to make dying stick to you.
|returnTomb>[Continue]{
(set: $astarion_refuse_interaction to true)
}](else:)[Astarion stares at the space where he knows you are, clearly thinking about what just happened, and how much he trusts you.
He breathes out in a soft hiss.
$astarion Get out of my tomb.
You feel a rush of movement and you're moving up. Out of the room. Out of the dream.
|forestEnd>[Continue]{
}]](elseif: $sequence is 4)[{
(if: $just_said is "didnt")[(set: $trust_adjustment to it+3)]
(elseif: $just_said is "notMe")[(set: $trust_adjustment to it+3)]
(elseif: $just_said is "ghost")[(set: $trust_adjustment to it+5)]
(set: $trust_for_test to $astarion_trust + $trust_adjustment)
}(if: $trust_for_test > 12)[(set: $sequence to 10)(go-to: $currentPassage)
](elseif: $trust_for_test > 7)[$astarion That wasn't you?<script>updateTrust(2);</script>
$astarion You're saying you didn't do that?
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $trust_for_test > 3)[$astarion Right. Of course.<script>updateTrust(1);</script>
His tone is venomous.
$astarion That was some //other// ghost.
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](else:)[Astarion stares at the space where he knows you are, clearly thinking about what just happened, and how much he trusts you.
He breathes out in a soft hiss.
$astarion Get out of my tomb.
You feel a rush of movement and you're moving up. Out of the room. Out of the dream.
|forestEnd>[Continue]{
}]](elseif: $sequence is 5)[(if: $trust_for_test > 9)[$astarion That wasn't you.<script>updateTrust(1);</script>
$astarion Some different ghost.
He sounds like he wants to believe that more than he actually believes that. But it's a powerful want.
|returnTomb>[Continue]{
}](else:)[$astarion That's...
$astarion Fine. Sure.
$astarion Let's go with that.
|returnTomb>[Continue]{
(set: $astarion_refuse_interaction to true)
}]](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[(if: $started_uncertain is true)[$astarion That...wasn't you?](else:)[$astarion That...wasn't you.]<script>updateTrust(5);</script>
He glances around. At the shattered funerary urns.(if: $sarcophagus_open is true)[ The open and robbed sarcophagus.]
$astarion I'm in a desecrated tomb. Plenty of ghosts to be had.
$astarion That wasn't you.
<span id="no" class="energy-link" data-content="Speak: No./Speech/2/+1/1"></span>
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
(display: "set mood tense")
(set: $astarion_interacted to true)
}](elseif: $sequence is 11)[(if: $just_said is "no")[$astarion Good. Good.
](elseif: $just_said is "touch")[Astarion's hand twitches away, but then he makes a vague motion towards you, as if to say he didn't mean that.
]$astarion It's dead, isn't it?
$astarion Well. Gone.
$astarion That's fine. That's fine then.
|returnTomb>[Continue]{
}](elseif: $sequence is 12)[Astarion looks warily in your direction.
<span id="no" class="energy-link" data-content="Speak: No./Speech/2/13/1"></span>
<span id="notMe" class="energy-link" data-content="Speak: Not me./Speech/3/14/1"></span>
<span id="ghost" class="energy-link" data-content="Speak: Was a ghost./Speech/4/14/1"></span>{
(set: $no_chance_to_talk to false)
(set: $astarion_refuse_interaction to false)
}](elseif: $sequence is 13)[$astarion 'No'?
$astarion What do you mean 'no'?
<span id="didnt" class="energy-link" data-content="Speak: Didn`t./Speech/2/14/1"></span>
<span id="notMe" class="energy-link" data-content="Speak: Not me./Speech/3/14/1"></span>
<span id="ghost" class="energy-link" data-content="Speak: Was a ghost./Speech/4/14/1"></span>{
}](elseif: $sequence is 14)[{
(if: $just_said is "didnt")[(set: $trust_adjustment to it+3)]
(elseif: $just_said is "notMe")[(set: $trust_adjustment to it+3)]
(elseif: $just_said is "ghost")[(set: $trust_adjustment to it+5)]
(set: $trust_for_test to $astarion_trust + $trust_adjustment)
}(if: $trust_for_test > 12)[(set: $sequence to 10)(go-to: $currentPassage)
](elseif: $trust_for_test > 7)[$astarion That wasn't you?<script>updateTrust(2);</script>
$astarion You're saying you didn't do that?
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](else:)[$astarion Right. Of course.<script>updateTrust(1);</script>
His tone is venomous.
$astarion That was some //other// ghost.
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}]](elseif: $sequence is 15)[(if: $trust_for_test > 9)[$astarion That wasn't you.<script>updateTrust(1);</script>
$astarion Some different ghost.
He sounds like he wants to believe that more than he actually believes that. But it's a powerful want.
|findAstarion>[Continue]{
}](else:)[$astarion That's...
$astarion Fine. Sure.
$astarion Let's go with that.
|findAstarion>[Continue]{
}]](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
]{
(click: ?goToSorry)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?goToGhost)[(set: $sequence to 4)(go-to: $currentPassage)]
(set: $enemyHealthDisplay to false)
}(if: $player_inventory contains 'knife' and $touch is 6)[<span id="stab" class="energy-link" data-content="Stab $enemy./Touch/6/+1/3"></span>
](elseif: $touch is 6)[<span id="hit" class="energy-link" data-content="Hit $enemy./Touch/6/+1/3"></span>
](if: $touch > 2)[<span id="push" class="energy-link" data-content="Push $enemy./Touch/3/+1/1"></span>](else:)[<span id="touch" class="energy-link" data-content="Touch $enemy./Touch/1/+1/1"></span>](if: $just_said is "stab" or $just_said is "hit")[You $just_said the ghost. <span class='health'>//Ghost Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $ghost_distract_count to it+2)
](if: $just_said is "push" or $just_said is "touch")[You $just_said the ghost, drawing its attention towards you.(if: $just_said is "push")[(set: $ghost_distract_count to it+2)](else:)[(set: $ghost_distract_count to it+1)]
](if: $just_said is "nothing")[You do nothing.
](if: $enemy_action contains "claw" and $ghost_distract_count > 2)[The ghost turns away from Astarion for a moment to lash out at you. <span class='health'>//$player_name Lost 3 Energy//</span>(set: $player_damange to it+3)(set: $ghost_distract_count to 0)(set: $enemy_action to "empty")
](if: $enemy_action is "claw distracted")[The ghost claws at Astarion, but is distracted and does less damage. <span class='health'>//Astarion Lost 3 Health//</span>(set: $astarion_damange to it+3)
](if: $enemy_action is "claw")[The ghost claws at Astarion. <span class='health'>//Astarion Lost 6 Health//</span>(set: $astarion_damange to it+6)
](if: $enemy_action is "die")[The ghost has been damaged to the point where she remembers she's dead. She fades away into nothingness.
](if: $enemy_damange > 0)[(set: $enemy_health_change to (0-$enemy_damange))(display: "update enemy health")](if: $enemyHealth is 0)[(set: $next_round_text to "End Combat")](if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here.
You see the faint trace of an object that doesn't quite exist yet.
|next>[Examine the outline.]
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[It's an outline of a bottle, round and glass, but padded with leather to keep it safe. Filled with bright red liquid.
<span id="look" class="energy-link" data-content="Try to see it clearly./Sight/4/2/2"></span>
|returnBase>[Do something else.]{
}](elseif: $sequence is 2)[As you focus on the item, |exp1>[you see more details.](click: ?exp1)[
//Or rather, more details exist to be seen. As they are perceived, they begin to exist.//]
Your attention helps this object manifest.
|next>[Continue]{
(set: $potion_state to "present")
}](elseif: $sequence is 3)[You are looking at a Potion of Greater Healing.
A draught for curing moderate injuries.
|gray3>[Take potion.] (click: ?gray3)[//This seems like something to be used now.//]
<span id="tell" class="energy-link" data-content="Tell Astarion about potion./Speech/2/+1/1"></span>
(if: $touch_trust > 1)[<span id="push" class="energy-link" data-content="Push Astarion towards potion./Touch/3"></span>
](if: $speech < 2 and $touch < 3)[<span id="bother" class="energy-link" data-content="Bother Astarion towards potion./Speech/1/+1/4"></span>
]|returnBase>[Do something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "take")[You pick up the healing potion.
|returnBase>[Continue]{
(set: $player_inventory to it + (a: 'potion'))
(set: $objects_taken to it + (a: 'potion'))
}](elseif: $just_said is "tell")[Saying the word 'Door' is enough to get Astarion to walk over here.
He finds the potion.
|next>[Continue]{
}](elseif: $just_said is "push")[Astarion tolerates being pushed in this direction.
He finds the potion.
|next>[Continue]{
}](else:)[You inefficiently communicate that you want Astarion to walk over here.
He finds the potion.
|next>[Continue]{
}]](elseif: $sequence is 5)[Astarion picks up the potion and examines it curiously.
$astarion It's been ages since I've had one of these.
He drinks it.(if: $astarion_hands is not "healed")[ And after a few seconds, the wounds on his hands start to heal.]
(set: $health_change to 10)(display: "update health")
|returnBase>[Continue]{
(set: $astarion_interacted to true)
(set: $astarion_hands to "healed")
(set: $astarion_location to "door")
(set: $just_said to "nothing")
(set: $vampire_enrichment_score to it+8)
<script>updateEmotion("happy",3);</script>
<script>updateEmotion("calm",2);</script>
(set: $player_inventory to it - (a: 'potion'))
(set: $objects_taken to it + (a: 'potion'))
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}{(if: $currentStat is 6)[(set: $maxLearning to 1)(set: $currentLearning to 1)]
(elseif: $currentStat is 0)[(set: $maxLearning to 1)]
(elseif: $firstPriority is $learnType)[
(if: $currentStat is 1)[(set: $maxLearning to 3)]
(elseif: $currentStat is 2)[(set: $maxLearning to 5)]
(elseif: $currentStat is 3)[(set: $maxLearning to 6)]
(elseif: $currentStat is 4)[(set: $maxLearning to 8)]
(elseif: $currentStat is 5)[(set: $maxLearning to 12)]
](elseif: $secondPriority is $learnType)[
(if: $currentStat is 1)[(set: $maxLearning to 4)]
(elseif: $currentStat is 2)[(set: $maxLearning to 7)]
(elseif: $currentStat is 3)[(set: $maxLearning to 10)]
(elseif: $currentStat is 4)[(set: $maxLearning to 13)]
(elseif: $currentStat is 5)[(set: $maxLearning to 17)]
](else:)[
(if: $currentStat is 1)[(set: $maxLearning to 5)]
(elseif: $currentStat is 2)[(set: $maxLearning to 9)]
(elseif: $currentStat is 3)[(set: $maxLearning to 13)]
(elseif: $currentStat is 4)[(set: $maxLearning to 17)]
(elseif: $currentStat is 5)[(set: $maxLearning to 21)]
]}(if: $sequence is 0)[<span class="text-shimmer-long">Something shimmers</span> in the air here. The faint trace of an object that doesn't quite exist yet.
(if: $scroll_total_energy < 25)[Whatever this object is, it's extremely complicated. Words and numbers and runes. They hang, disparate and disorganized in the air.
You remember, long ago, hearing something about how it's hard to read in dreams. This feels like visual evidence of that.
](elseif: $scroll_total_energy < 50)[The mess of words and runes has organized itself into something more legible.
You think it's a letter? Or a set of instructions?
](elseif: $scroll_total_energy < 75)[There's a shape to the words now. They're all lying vaguely on the same level.
It's like if someone peeled the paper away from under a page of words, and left the words hanging in formation.
](elseif: $scroll_total_energy < 90)[Parchment has begun to appear under the words in the air.
This is starting to look less like a concept and more like an object.
](else:)[This is some sort of scroll with writing on it.
You can almost make out what it says. Almost.
]
//Try to see it clearly://
(if: $energy > 0)[|learn>[Spend <span class="energy">1 Energy</span>]
](if: $energy > 5)[|learnLots>[Spend <span class="energy">5 Energy</span>]
]|level>[Spend <span class="energy">$energy Energy</span>]
|returnBase>[Do something else.]{
}](elseif: $sequence is 1)[
](elseif: $sequence is 2)[As you focus on the item, |exp1>[you see more details.](click: ?exp1)[
//Or rather, more details exist to be seen. As they are perceived, they begin to exist.//]
Your attention helps it manifest, but this object is extremely complicated. You feel that you could pour energy into this for days, and it might never be real.
(if: $sight < 3)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[But you also feel that you are not alone in this. That there is someone else slowly putting energy towards creating this object.]
(if: $sight < 4)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class='energy'>//$scroll_total_energy Energy Has Been Spent//</span>]
(if: $energy is 0)[(display: "rest text")
](else:)[(if: $energy > 0)[|learn>[Spend <span class="energy">1 Energy</span>]
](if: $energy > 5)[|learnLots>[Spend <span class="energy">5 Energy</span>]
]|level>[Spend <span class="energy">$energy Energy</span>]
|returnBase>[Do something else.]]{
}](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?learn)[
(set: $scroll_total_energy to it+1)
(set: $energy_change to -1)
(display: "update energy silent")
(set: $sequence to 2)
(go-to: $currentPassage)]
(click: ?learnLots)[
(set: $scroll_total_energy to it+5)
(set: $energy_change to -5)
(display: "update energy silent")
(set: $sequence to 2)
(go-to: $currentPassage)]
(click: ?level)[
(set: $scroll_total_energy to it+$energy)
(set: $energy_change to (0-$energy))
(display: "update energy silent")
(set: $sequence to 2)
(go-to: $currentPassage)]
}{
(if: $cold_state is "increased")[
(if: $active_event is "teeth" or $sigh_location is "tomb")[<script>changeBackground("columnsTeethFrameVeryCold");</script>]
(else:)[<script>changeBackground("columnsFrameVeryCold");</script>]
](elseif: $cold_state is "ending" or $cold_state is "active")[
(if: $active_event is "teeth" or $sigh_location is "tomb")[<script>changeBackground("columnsTeethFrameCold");</script>]
(else:)[<script>changeBackground("columnsFrameCold");</script>]
](else:)[
(if: $active_event is "teeth" or $sigh_location is "tomb")[<script>changeBackground("columnsTeethFrame");</script>]
(else:)[<script>changeBackground("columnsFrame");</script>]
]
}<span class="actText">Act 3</span>
|quote>[“
A bastellus remains unseen until it is time to feed. People who |survive>[survive an encounter] or witness it feeding have difficulty describing the creature. Its shape is changable to better blend with surrounding shadows. But it has one distinct feature: its many toothed and leering smile.
”
— Ravenloft: Denizens of Darkness]
|leaveTomb>[Leave the tomb.](if: $played_first_acts is true)[(click: ?survive)[ (replace: ?quote)[“
Are they out? Did they get out? Where are they now?
”
— Karlach]]]
{
(set: $in_intro to false)
(display: "Act 3 Variables")
(set: $Quickstart to true)
<script>savePermSettings();</script>
(click: ?leaveTomb)[(go-to: "Hallway")]
(set: $healthDisplay to false)
(set: $energyDisplay to false)
<script>changeBackground("");</script>
}(if: $sequence is 0)[You are at the end of a stone hallway. |exp3>[Spikes line the walls.](click: ?exp3)[ They are |exp1>[hung with chains like garlands.](click: ?exp1)[ This is one of the most 'dungeon' feeling dungeons you've ever been in.]]
An open stone door |exp2>[leads into a tomb.](click: ?exp2)[ You've been locked in there |exp4>[for days.](click: ?exp4)[ Astarion has been locked in there for months.]]
(if: $time < $godey_time_to_arrive)[You can hear distant footsteps approaching.
(if: $time is 1)[Astarion is looking for somewhere to hide.(set: $hallway_hiding_spot to "none")(if: $display_hint_1 is true)[
//Astarion is in motion now and will remain so until the end of the game.
Every time you use <span class='energy'>Energy</span> or <span style='color: #8b8989;'>Wait</span>, time will pass and things will change.//(set: $display_hint_1 to false)]
](elseif: $time is 2)[Astarion ducks behind one of the open stone doors, which conceals him, but is an obvious hiding spot. He's still scanning the hall for something better.(set: $hallway_hiding_spot to "door")
](elseif: $time is 3)[Astarion darts down the hall. There is a desiccated corpse impaled on one of the wall spikes and Astarion presses himself to the wall beside it. It effectively blocks him from view, but puts him near the dead-end of the hallway.(set: $hallway_hiding_spot to "corpse")
](elseif: $time is 4)[Astarion is down the hall, hiding in the shadow of another corpse. He's still peering actively around the hallway.
](elseif: $time is 5)[Astarion creeps towards what appears to be an empty stretch of wall. He presses what appears to a random stone.
A hidden door swings open, revealing a closet-sized space. Astarion steps inside and pulls it closed.(set: $hallway_hiding_spot to "alcove")
]
(if: $hallway_hiding_spot is not "alcove")[(if: not ($astarion_act3_talked contains "godeyFootsteps"))[<span id="godeyFootsteps" class="energy-link" data-content="Speak: Footsteps?/Speech/2/+1"></span>
](elseif: not ($astarion_act3_talked contains "whatDoing"))[<span id="whatDoing" class="energy-link" data-content="Speak: What doing?/Speech/3/+1"></span>
](elseif: not ($astarion_act3_talked contains "canHelp"))[<span id="canHelp" class="energy-link" data-content="Speak: Can I help?/Speech/4/+1"></span>
]]<span id="hide" class="energy-link" data-content="Help look for a hiding spot./Sight/5/2/0"></span>
|earlyGodey>[Go towards the footsteps.]
|tomb>[Return to the tomb.]
|wait>[Wait.]
](else:)[(if: $hallway_hiding_spot is "door")[Astarion is hiding behind one of the stone doors.
](elseif: $hallway_hiding_spot is "corpse")[Astarion is hiding near the dead-end of the hallway, concealed behind another corpse hanging off the wall.
](elseif: $hallway_hiding_spot is "alcove")[Astarion isn't visible.
]
|godeyArrives>[The footsteps arrive.]
]{
(set: $healthDisplay to true)
(set: $energyDisplay to true)
(set: $learnDisplay to false)
(set: $enemyHealthDisplay to false)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[(set: $time to it+1)(if: $just_said is "godeyFootsteps")[$astarion Godey. That's Godey.
He sounds rushed and frightened as he searches the hall for a better place to hide.
$astarion Skeleton. Armor. Sword. He's going to try to put me back in the tomb.
$astarion I just need a moment...
|return>[Continue]{
(set: $astarion_act3_talked to it+"godeyFootsteps")
}](elseif: $just_said is "whatDoing")[$astarion I need somewhere to hide.
$astarion Shadows aren't enough. He can see in the dark.
$astarion I think there's a false wall in this passage. The palace is filthy with them.
$astarion But where <i>is</i> it...
|return>[Continue]{
(set: $astarion_act3_talked to it+"whatDoing")
}](elseif: $just_said is "canHelp")[(if: $astarion_trust < 10)[$astarion You could stop <i>chattering</i> at me while I'm trying to concentrate.
](else:)[$astarion I <i>really</i> don't have time to hold your hand right now, darling. He's almost here.
]
|return>[Continue]{
}]{
}](elseif: $sequence is 2)[You notice a section of the wall looks strange.
You |exp1>[push your hand through the stone wall, ](click: ?exp1)[
//One of the few advantages to being so ghostlike.//
]and discover it's hollow.
<span id="draw" class="energy-link" data-content="Draw Astarion's attention./Touch/0/+1"></span>
|return>[Do something else.]{
}](elseif: $sequence is 3)[Astarion examines the wall and quickly discovers one of the stones is loose. He pushes it.
A hidden door swings open, revealing a closet-sized space.
Astarion takes a second to confirm the door is openable from the inside. Then he steps inside and pulls it closed.
|godeyArrives>[Continue]{
(set: $hallway_hiding_spot to "alcove")
}](elseif: $sequence is 4)[
](elseif: $sequence is 5)[As you move away from Astarion, it becomes harder to see and move, but you can make it to the end of the hall.
There's a skeleton here. Heavily armored. Carrying a broadsword.(if: $godey_state is "afraid")[ His lower jaw is still cracked from where you hit him.](elseif: $godey_state is "burned")[ There are acid burns on his armor and legbones.]
He's moving(if: $stone_door_oiled is false)[ quickly] towards the tomb. You could wait for him to get close and do something as he passes you.
(if: $speech is 6)[<span id="shout" class="energy-link" data-content="Shout at him./Speech/6/+1"></span>](else:)[<span id="noise" class="energy-link" data-content="Make a distracting noise./Speech/5/+1"></span>]
(if: $player_inventory contains 'knife' and $touch is 6)[<span id="stab" class="energy-link" data-content="Stab him./Touch/6/+1/3"></span>](else:)[<span id="hit" class="energy-link" data-content="Hit him./Touch/6/+1/3"></span>]
<span id="push" class="energy-link" data-content="Push him./Touch/3/+1/1"></span>
|return>[Go back to the hallway.]{
(set: $enemyHealthDisplay to true)
}](elseif: $sequence is 6)[(if: $just_said is "shout" or $just_said is "noise")[The skeleton stops short. He takes a moment to examine the section of hall where the sound came from.
$godey Restless hauntings. Fussing ghosts.
$godey Not Godey's job.
|godeyArrives>[He continues down the hall.]{
}](elseif: $just_said is "stab" or $just_said is "hit")[You attack the skeleton.(if: $godey_state is "afraid")[ It's less effective than the first time. He's ready for a fight now.]
<span class='health'>//Godey Lost $player_weapon_damage Health//</span>(set: $enemyHealth to it-$player_weapon_damage)<script>playAudio("aa_damage");</script>
He stops and raises his sword, looking
$godey Restless hauntings. Fuss at Godey with pinpricks.
$godey Hush you. You are not my job.
|godeyArrives>[He continues down the hall.]{
}](elseif: $just_said is "push")[The skeleton sways slightly as something invisible shoves him. He stops to flick his sword through you. It passes harmlessly.
$godey Restless hauntings.
$godey Fussing ghosts.
$godey Not Godey's job.
|godeyArrives>[He continues down the hall.]{
}]{
(set: $time to $godey_time_to_arrive+1)
(set: $godey_aware_of_ghost to true)
}](elseif: $sequence is 7)[
](elseif: $sequence is 8)[There is a clattering-clank of bones on metal. A heavily armored skeleton walks into the hallway.
He carries an unsheathed broadsword. (if: $godey_state is "afraid")[His lower jaw is still cracked from where you hit him.](elseif: $godey_state is "burned")[There are acid burns on his armor and legbones.]
He stops in front of the open tomb door. Regards it with empty sockets.
$godey Foolish boy. Restless boy. Always tugging on your leash.
$godey Where are you hiding then? Come to Godey, child.
He begins searching the hallway.
|godeyHallway>[Continue]{
(if: $hallway_hiding_spot is not "alcove")[
(if: $time >= 6)[(set: $hallway_hiding_spot to "alcove")]
(elseif: $time >= 4)[(set: $hallway_hiding_spot to "corpse")]
(else:)[(set: $hallway_hiding_spot to "door")]
]
(if: $hallway_hiding_spot is "alcove")[<script>addAchieve("Secret Tunnel");</script>]
(set: $time to 6)
(set: $talk_godey_hallway to 0)
(set: $enemyHealthDisplay to true)
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?earlyGodey)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?godeyArrives)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?tomb)[(set: $sequence to 0)(go-to: "Open Tomb")]
(click: ?godeyHallway)[(set: $sequence to 0)(go-to: "Hallway With Skeleton")]
(if: $hallway_spike_state is "broken")[<script>changeBackground("hallwaySpikeBroken");</script>]
(else:)[<script>changeBackground("hallwaySpike");</script>]
}{
(if: $act3_quickstart is true)[(display: "Act 3 Quickstart")]
(display: "Text Colors")
(set: $astarion_location to "not in the tomb")
(set: $astarion_mood to "complicated")
(set: $currentArea to "Hallway")
(set: $days_known_dream to $day - $astarion_learned_dream)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
(set: $day to 174)
(set: $in_act3 to true)
(set: $his_attention to 0)
(set: $his_attention_display to false)
(set: $his_attention_once to false)
(set: $escape to 0)
(set: $escape_display to false)
(set: $bastellusFangs to 0)
(set: $gaveAstarionFangs to false)
(set: $his_attention_max to 20)
(set: $escape_max to 13)
(if: $difficulty is "explorer")[
(set: $his_attention_max to 20)
(set: $escape_max to 10)
]
(elseif: $difficulty is "balanced")[
(set: $his_attention_max to 16)
(set: $escape_max to 13)
]
(set: $time to 1)
(set: $timeReached to 0)
(set: $astarion_act3_talked to "empty")
(set: $astarion_drew_attention to "empty")
(set: $draw_attention_blocked to "empty")
(set: $display_hint_1 to true)
(display: "Calculate Weapon Damage")
(set: $tookFangTomb to false)
(set: $foundFangTomb to false)
(set: $godey_time_to_arrive to 3)
(set: $godey_aware_of_ghost to false)
(set: $godey_attacked_once to false)
(set: $godey_surprised to false)
(if: $stone_door_oiled is true)[(set: $godey_time_to_arrive to 5)]
(set: $enemyName to "Godey")
(set: $enemyNameText to "skeleton")
(set: $enemyHealth to 40)
(set: $enemyMaxHealth to 40)
(if: $godey_state is "afraid")[(set: $enemyHealth to it-5)]
(elseif: $godey_state is "burned")[(set: $enemyHealth to it-12)]
(set: $unvisitedLocations to (a: "kennel", "foyer", "office", "dormitory"))
}{
(display: "Act 1 Variables")
(display: "Act 2 Variables")
(set: $day to 174)
(set: $astarion_learned_dream to 174)
(set: $energy to 10)
(if: $difficulty is "explorer")[(set: $health to 35)]
(else:)[(set: $health to 25)]
(set: $sight to 4)
(set: $speech to 5)
(set: $touch to 3)
(set: $firstPriority to "Speech")
(set: $secondPriority to "Sight")
(set: $maxEnergy to 10)
(set: $astarion_trust to 13)
(set: $touch_trust to 4)
(set: $what_is_player to "ghost")
(set: $player_term to "ghost")
(set: $player_name to "Tav")
(set: $astarion_inventory to it + (a: 'clive'))
(set: $astarion_inventory to it + (a: 'knife'))
(set: $astarion_inventory to it + (a: 'amber'))
}The door feels like an insurmountable problem right now. There's |exp1>[nothing here you can see that could open it.](click: ?exp1)[
(if: $day < 163)[Which is frustrating and a little frightening. |exp2>[What are you supposed to do?](click: ?exp2)[
If you can't solve the main problem, |exp3>[what's the point of doing anything?](click: ?exp3)[
$sigh Perhaps you should just give up.
|exp4>[you think.](click: ?exp4)[
It was definitely you, who just thought that.]]]](else:)[But you have friends on the outside, |exp5>[who are going to find a way to help you.](click: ?exp5)[
So fuck despair.]]]{
(set: $Act1 to (a:
"Hello Crypt~Start by Speaking in the tomb.~Learn Speak first. Whisper.",
"since feeling is first~Explore the tomb using only Touch.~Learn Touch before Sight.",
"Astarion Approves~Reach Trust 10.~You can gain trust through events and by being reliably present.",
"Astarion Approves More~Reach Trust 15.~Consider choosing a familiar name.",
"Storytime~Convince Astarion to tell you a story.~Reach Trust 7 and ask for one.",
"Vampire Enrichment~Reach a Vampire Enrichment score of 30.~Do a variety of different things in one day. A high Sight will help you see where you are.",
"Grave Robbing~Open the sarcophagus.~You can't do this. A rogue might be able to, if he had tools.",
"No You Can't Be Scratch~When asked to identify yourself, find five different names the game will not let you use.~Consider characters who couldn't possibly be here.",
"I Guess You Could Conceivably Be Omeluum~When asked to identify yourself, find a name the game will be incredulous about, but will let you use.~Consider characters who have psyonic powers, or who are powerful enough to break rules.",
"Beat Up Godey~Break a skeleton's jaw.~Be someone good at violence. Train Touch. Explore outside the tomb.",
"Murder Godey~Requires Act 3.~Requires Act 3.",
"I Don't Need Words~Finish Act 1 without ever training Speech.~Ignore Speech on the first day, and then never practice it at all.",
"I Only Need Words~Finish Act 1 without ever training Touch.~Ignore Touch on the first day, and then never practice it at all.",
"Devouring Dark~End the game by health loss.~Don't interact with Astarion.",
"Message From Another World~Reach the end of Act 1.~Learn Speech first and level it early. Say at least hello every day. Be careful with Touch. Ask for stories. This is not the only path, but it is the easiest."))
(set: $Act2 to (a:
"Roll Arcana~Flex your wizardly knowledge. Credit to @finchsflight.~Be a wizard. Look for opportunities to flex your mystical knowledge. There's one in the sarcophagus.",
"None Of Them Answered~Find meaning in prayer, even when it does nothing practical. Credit to @pennamepersona.~Be a cleric or a paladin. Pray until you realize something.",
"Original Characters Do Not Steal~Tax the limits of Astarion's storytelling ability.~Ask for stories every day until he runs out of books.",
"Good Morning~Silly little absurdities pass the time.~Train Speech. Use the longer greeting until it's unintentionally sad. It was still worthwhile.",
"Irritate the Bastellus~Annoy the nightmare into leaving.~Encourage it to stay, but then be rude at every opportunity.",
"Happily Encumbered~Look at Astarion's inventory when he has at least nine items.~It helps to be a rogue. It helps to have high Touch. Try to get him working on projects early.",
"Wyllstarion~Switch places with someone.~Leave or be ejected from the dream any time during Act 2.",
"Um Actually~Be pedantically skeptical about whether your escape method should work, rules as written.~Be a wizard. Get to the end of Act 2. Be critical of the solution."))
(set: $Act3 to (a:
"Murder Godey~Kill that skeleton.~If Astarion can't find a place to hide, confrontation is inevitable.",
"Turnabout~Trap Godey in the tomb.~You will need high Speech. Return to the tomb and make noise at the right time.",
"Secret Tunnel~Discover the best hiding place in the dungeon hallway.~Have high Sight or give Astarion enough time to find it himself.",
"Free As A Flower~Release Violet from the kennel.~Ask Violet for this hint.",
"First Bite~Get Astarion first dibs on the rat in the dormitory.~Give something to Dalyria in trade or interfere with the hunt.",
"Meet Victoria~Meet the thirteen-year-old girl who lives in this horrorshow.~Investigate the singing in the dormitory.",
"Creepy Whispers~Haunt Petras until he flees.~You'll need high Speech and to talk to him enough to unnerve him.",
"Kennel Secret~Find the thing that's out of place in the kennel.~It's on the table.",
"Foyer Secret~Find the thing that's out of place in the foyer.~One of the paintings is off theme.",
"Dormitory Secret~Find the thing that's out of place in the dormitory.~Vampire spawn don't travel. Why is this travel-worn?",
"Office Secret~Find the thing that's out of place in the office.~One of the books tells a familiar story.",
"His Presence~Encounter Astarion's master.~Max out His Attention.",
"Like Pulling Teeth~Find a Bastellus fang.~Search the kennel thoroughly.",
"A Sword Called Ouroboros~Find all the Bastellus fangs.~They're hidden in the worst parts of every location.",
"Rope Trick~Finally find a use for rope in BG3.~Get to the end of the game.",
"Mage Slayer~Defeat Leon.~Making him retreat counts as defeating him. Get him to less than 15 health.",
"Roll To Disbelieve~Completely avoid the fight with Leon.~In Act 1, tell Astarion this is a dream as soon as possible.",
"The Trapmaker~Meet Yousen.~Visit the foyer, the dormitory, and the office without reaching max escape.",
"New Least Favorite Brother~Involve Yousen in the fight with Leon.~Meet Yousen, and tell him this is all a dream.",
"Turn Based Combat~Have five people acting in a combat round.~You will need to free Violet, involve Yousen in the Leon fight, and deploy Violet at the correct time.",
"Face Your Fear~Confront the Bastellus.~This one's hard. Good luck.",
"Dreamkiller~Kill the Bastellus.~Get through the fears as fast as possible. Help where you can. Sometimes it's best to help yourself first.",
"Efficent Dreamkiller~Kill the Bastellus before it makes the dream silent.~Giving Astarion Ouroboros will help with this.",
"Let Him Have a Minute~Let Astarion stab the nightmare's corpse as long as he wants.~Be patient."))
(set: $Tav to (a:
"Aldiirn~Dusksong~Use music to make first contact.~Be a bard. Practice Speech first. Choose an alternative to whispering.~@mistercrowbar",
"Aliizi~New Patron~Complete the 'My Nightmare' Dark Feat as a warlock.~Be a warlock. Complete the nightmare's proposal while at Trust 20.~Aliizi",
"Anastavia~Wordplay~Irritate/Entertain Astarion by making puns.~Be a bard. Let Astarion find the teddy bear himself. Talk about it.~#AbigailMoment~https://archiveofourown.org/works/50706940/chapters/128092708",
"Andar~Poor Man's Dancing Lights~Try to cast magic.~Be a wizard, sorcerer, or warlock. Practice Touch first. Interact with Astarion.~#Tatsunara~https://archiveofourown.org/works/53068186",
"Astor~Oath of Devotion Compassion~End Act 1 with 30 health and no skill over level 3.~Prioritize spending time with Astarion over skill development.~theparanoidandroid",
"Echo~Echoing Words~Interact with Astarion every day during Act 1.~A simple feat that requires diligence.~luke",
"Ember~Ghosts Need Sleep~Explain why you're sometimes absent.~This is possible on day 160. You will need at least Speech 3.~@catsharky",
"Finch~Get Safe And Cared For Idiot~Successfully hug Astarion.~Practice Touch first. Reach Level 4. Cultivate trust and spend a lot of time holding hands before trying this.~@everchased",
"Francys~Priorities~Ignore everyone else in the campsite.~You will need to go through the entire campsite introduction at least once to get this option.~@ineadhyn",
"Greygold~Psspsspss~Help Astarion calm down after being frightened.~Be a ranger or a druid. Astarion must be frightened by something. Something frightening reliably happens on Day 158, but you will need Speech 2 to tell him about it.~@jeeaark",
"Myna~You Will Have That Again~Promise Astarion the sun.~Ask Astarion how he is consistently in Act 2. Make sure he trusts you. Have enough Speech to make a promise.~Myna's player",
"Nawen~You're Unbreakable~Give your vampire a pep-talk after a particularly difficult day.~Be a rogue. Practice Speech first. Reach Level 4 as fast as you can. After Astarion has is breakdown, tell him to listen to you.~@ineed-to-sleep",
"Ria~Music Box~Play the theme.~Be a bard. One of your Speech options will be performing. Whistle a song about a river.~@ladyofrosefire",
"Staeve~Don't Forget Me~Say something memorable.~Reach at least Trust 10 and, when he asks, tell Astarion your name is Staeve.~@velnna",
"Tavlen~I Would REALLY Like To Vanquish The Monster Please~Persuade Astarion to try to kill the Bastellus without having to say anything.~Be a Paladin. Reach at least Trust 15. Watch for a class-specific option near the end of Act 3.~mataglap",
"Temiter~This Is All A Bit Much~Abandon the dream using the silver cord.~Practice Sight first. Reach Level 4. Explore the space by the niches. Escape.~@not-poignant",
"Veruca~Like A Shadow~Identify yourself as neither a dream nor a ghost.~Have low speech and be vague when Astarion asks what you are.~haz is here",
"Violetta~By Durge Standards This Is Fine~Give a grim answer when Astarion asks how you are.~Have high speech and ask Astarion how he is often.~Donna Beneviento",
"Wyndolyn~Irksome Practicality~Irritate Astarion for his own protection.~When the nightmare arrives in Act 1, poke Astarion to get him away from it.~@namig42",
"Zip~Immediately Lucid~Make Astarion aware of the dream on the second day.~Focus on speech. You will need to leave him hanging for a day.~mandolinvillain",
"Zynn~Healing Words~If you can't cast Cure Wounds, you can at least say kind things.~Be a cleric. Look for an extra option at the end of Astarion's breakdown.~Lord Alligator",
))
(set: $Dark to (a:
"It Has A Name~Learn the Nightmare's name.~All you need to do is ask.",
"Laughing In The Dark~Make the Nightmare chuckle.~Be friendly. Ask it what it wants. Make a practical offer.",
"Killing Cold~Let Astarion freeze to death.~You need to actively interfere with him finding a gift.",
"Upsetting Storytime~Hear all three of the Nightmare's stories.~You will need to be nice to it, talk to it often, and exhibit an interest in listening to stories.",
"Last Meal~Make a deal with the Nightmare.~Talk to the Nightmare. Get it to trust you. When it asks for something, say yes.",
"This Is How I Save The Realm~Save Baldur's Gate from inside the dream.~Agree to and complete the Nightmare's proposal.",
"My Nightmare~Impress the nightmare so profoundly that it decides to enter your service.~Complete 'This Is How I Save The Realm' while at Trust 20.",
"My Candle~Complete My Nightmare as the Nightmare's favorite class.~Sigh likes paladins.",
"Forever Dreaming~Find the worst ending.~Lose the Leon battle while Yousen is actively participating."
))}(if: $sequence is 0)[You wake up in the forest.
You're on a bedroll near the campfire. A blanket has been draped over you.
A man with one eye and demon horns sits beside you.
|next>[Continue]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
}](elseif: $sequence is 1)[$wyll You're back. Is..?
He looks at the person lying beside you.
|next>[Continue]
](elseif: $sequence is 2)[Astarion is also on a bedroll near the campfire.
He is still asleep. Completely still. Not breathing.
He looks somehow even paler than usual.
|next>[Continue]
](elseif: $sequence is 3)[Wyll moves quickly.
Not physically. Physically, he remains sitting beside you.
But you feel a rush of mental movement. The spark of the tadpole activating as he launches himself into the space you just left.
Tumbling down a very long way into a cold, dark place.
|next>[Continue]{
<script>addAchieve("Wyllstarion");</script>
}](elseif: $sequence is 4)[You catch Wyll's body as it collapses. One of his horns knocks against your chin.
Now there are two limp bodies by the campfire again.
You're going to have to find a way to help from this side.
Good luck.
|goToTitle>[Return to title.]
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
]{
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
<script>changeBackground("");</script>
(set: $energyDisplay to false)
(set: $healthDisplay to false)
(set: $enemyHealthDisplay to false)
}
(if: $sequence is 0)[Astarion has:
(if: $bastellusFangs is 5 and $gaveAstarionFangs is true)[A sword named Ouroboros.
](elseif: $bastellusFangs > 0 and $gaveAstarionFangs is true)[A (display: "Fang Weapon Name").
](set: $inventory to $astarion_inventory)(if: $inventory's length is 0)[Nothing.
](display: "Inventory List")
You have:
(if: $bastellusFangs is 5 and $gaveAstarionFangs is not true)[A sword named Ouroboros.
](elseif: $bastellusFangs > 0 and $gaveAstarionFangs is not true)[A (display: "Fang Weapon Name").
](if: $inventory's length is 0 and $bastellusFangs is 0)[Nothing.
](set: $inventory to $player_inventory)(display: "Inventory List"){
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
}](elseif: $sequence is 1)[
](elseif: $sequence is 2)[
](elseif: $sequence is 5)[
]{
}(if: $inventory contains 'pliers')[A set of pliers.
](if: $inventory contains 'oil')[A flask of oil.
](if: $inventory contains 'shroud')[A burial shroud.
](if: $inventory contains 'ring')[A magical ruby ring.
](if: $inventory contains 'clive')[A worn teddy bear.
](if: $inventory contains 'pottery shard')[A sharpened shard of pottery.
](if: $inventory contains 'water')[A carafe of water.
](if: $inventory contains 'empty carafe')[An empty carafe.
](if: $inventory contains 'brick')[A stone brick.
](if: $inventory contains 'amber')[A warm, red crystal.
](if: $inventory contains 'toolkit')[A kit of thieves' tools.
](if: $inventory contains 'improvised lockpicks')[An improvised set of lockpicks.
](if: $inventory contains 'knife')[(if: $knife_nature is "hunter")[A knife that makes things bleed.](elseif: $knife_nature is "sussur")[A knife that creates silence.](elseif: $knife_nature is "assassin")[A knife for killing dreams.](else:)[A knife.]
](if: $inventory contains 'rusty dagger')[A rusty dagger.
](if: $inventory contains 'surgery kit')[A surgery kit.
](if: $inventory contains 'blue flower')[A blue flower.
](if: $inventory contains 'rags')[A mound of rags.
](if: $inventory contains 'ring of keys')[A ring of keys.
](if: $inventory contains 'delicate jacket')[A delicate jacket.
](if: $inventory contains 'backless gown')[A backless gown.
](if: $inventory contains 'padded doublet')[A padded doublet.
](if: $inventory contains 'diamond doublet')[A diamond doublet.
](if: $inventory contains 'tattered blouse')[A tattered blouse
](if: $inventory contains 'tasteful boots')[A pair of tasteful boots.
](if: $inventory contains 'music box')[A mechanical music box.
](if: $inventory contains 'wine bottle')[A half-empty wine bottle.
](if: $inventory contains 'dead bat')[A dead bat.
](if: $inventory contains 'empty bottle')[An empty bottle.
](if: $inventory contains 'etiquette note')[A note on servant etiquette.
](if: $inventory contains 'queen of kingpins')[The book 'Queen of Kingpins'
](if: $inventory contains 'lower city upper city')[The book 'Lower City, Upper City'
](if: $inventory contains 'adventures of tenebrux morrow')[The book 'Adventures of Tenebrux Morrow'
](if: $inventory contains 'patriars of baldurs gate')[The book 'Patriars of Baldurs Gate'
](if: $inventory contains 'the seven companions')[The book 'The Seven Companions'
](if: $inventory contains 'scroll of counterspell')[A scroll of Counterspell.
](if: $inventory contains 'magical histories')[The book 'Magical Histories'
](if: $time is 7 and $hallway_hiding_spot is "door" and $godey_interrupt is false)[Something is happening in the hallway.
|goHallwaySkeleton>[You go look.]
](elseif: $time is 8 and $hallway_hiding_spot is "corpse" and $godey_interrupt is false)[Something is happening in the hallway.
|goHallwaySkeleton>[You go look.]
](elseif: $time is 9 and $hallway_hiding_spot is "alcove" and $godey_interrupt is false)[Something is happening in the hallway.
|goHallwaySkeleton>[You go look.]
](elseif: $time >= $godey_time_to_arrive and $time < 6)[Something is happening in the hallway.
|godeyArrives>[You go look.]
](elseif: $sequence is 0)[You are inside of a tomb.
A column-bracketed stone door stands wide open. (if: $tookFangTomb is not true)[(if: $foundFangTomb is true)[A large tooth is stuck in it.](elseif: $sight < 4)[//There's something strange about it.//](else:)[There is something stuck in it.]]
(if: $time is 1)[Through the door, you see Astarion. He is looking for somewhere to hide.
](elseif: $time is 2)[Astarion is moving through the hall. He is briefly visible through the doorway.
](elseif: $time is 5)[Astarion is moving through the hall. He is briefly visible through the doorway.
](elseif: $time is 6)[You see an armored skeleton is out in the hallway. He is moving to look behind the stone doors.
](elseif: $time is 7)[An armored skeleton is peering through the open door.
$godey No. You wouldn't stay inside. Restless child.
]
(if: $speech is 6)[<span id="shout" class="energy-link" data-content="Shout./Speech/6/+1"></span>](else:)[<span id="noise" class="energy-link" data-content="Make a distracting noise./Speech/5/+1"></span>]
(if: $tookFangTomb is not true)[(if: $foundFangTomb is true)[<span id="examineTooth" class="energy-link" data-content="Examine the tooth./Sight/0/15/0"></span>
](elseif: $sight < 4)[<span id="searchDoor" class="energy-link" data-content="Carefully search the door./Sight/0/14/2"></span>
](else:)[<span id="examineThing" class="energy-link" data-content="Examine the thing in the door./Sight/0/15/0"></span>
]](if: $time >= 6)[|goHallwaySkeleton>[Leave tomb.]](else:)[|goHallway>[Leave tomb.]]
|wait>[Wait.]{
(set: $healthDisplay to false)
}](elseif: $sequence is 1)[You break the silence of the tomb.(set: $godey_interrupt to false)
(if: $time is 1)[Astarion glances at you from the doorway.
](elseif: $time is 2 or $time is 5)[Astarion glances at you as he passes by the doorway.
](elseif: $time is 6 or $time is 7)[The skeleton looks your way.(set: $godey_interrupt to true)
$godey Were you a good boy, then? Stayed where you should?
$godey A first time for everything.
He moves into the tomb, investigating the noise you made.
](else:)[There is no visible response.
]
(if: $godey_interrupt is true)[|next>[Continue]](else:)[|return>[Continue]]
{
(set: $time to it+1)
}](elseif: $sequence is 2)[You are inside of a tomb.
A column-bracketed stone door stands wide open.
An armored skeleton is here, searching around the sarcophagus.
<span id="hello" class="energy-link" data-content="Speak: Hello./Speech/2/+1"></span>
|trapGodey>[Leave tomb.]{
(set: $godey_distracted to false)
}](elseif: $sequence is 3)[(if: $godey_aware_of_ghost is true)[$godey The ghost.](else:)[$godey A ghost!] Meddling spirit.
$godey Where is the prisoner?
$godey Tell old Godey where the prisoner is, and I'll murder you a friend.
$godey Keep you company in your grave.
<span id="out" class="energy-link" data-content="Speak: Out./Speech/2/+1"></span>
<span id="fuck" class="energy-link" data-content="Speak: Fuck off./Speech/3/+1"></span>
<span id="close" class="energy-link" data-content="Speak: Closing the door./Speech/4/+1"></span>
|trapGodey>[Leave tomb.]{
}](elseif: $sequence is 4)[(if: $just_said is "out")[$godey Fool ghost.
$godey I can see that even with my empty eyes.
](elseif: $just_said is "fuck")[$godey Nasty ghost.
$godey I will come back with grave salt and incense.
$godey See how well you talk with your soul melting into vapor.
](elseif: $just_said is "close")[The skeleton's jaw clatters in alarm.
$godey What?
]
|trapGodey>[As he speaks, the door behind him is swinging closed.]{
(set: $godey_distracted to true)
}](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[(if: $stone_door_oiled is true and $godey_distracted is true)[The stone door to the tomb swings shut, loud with scraping stone, but quickly on its oiled hinges.<script>playAudio("aa_door");</script>
The skeleton shrieks and rushes towards it, trying to wedge his sword into the closing gap. But he was far in the tomb, distracted by your words and the door closes too quickly.
He stands between the columns, cursing and battering at the stone with his boney hands.
You feel Astarion moving away.
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "trapped")
<script>addAchieve("Turnabout");</script>
}](elseif: $stone_door_oiled is true)[You float out into the hallway and see Astarion with his shoulder against the tomb door, pushing it closed.
The stone door swings shut, loud with scraping stone, but quickly on its oiled hinges.<script>playAudio("aa_door");</script>
The skeleton shrieks and rushes towards it, trying to wedge his sword into the closing gap.
But the door closes quickly and with heavy inertia, sealing him inside.
|next>[Continue]{
(set: $healthDisplay to true)
}](elseif: $godey_distracted is true)[The stone door to the tomb swings closed slowly, and with a torturous creak.<script>playAudio("aa_doorHinge");</script>
The skeleton shrieks and rushes towards it, trying to wedge his sword into the closing gap. But he was far in the tomb, distracted by your words.
The door slams shut and he stands between the columns, cursing and battering at the stone with his boney hands.
You feel Astarion moving away.
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "trapped")
<script>addAchieve("Turnabout");</script>
}](else:)[You float out into the hallway and see Astarion with his shoulder against the tomb door, pushing it closed.
The stone door swings shut slowly and with a torturous creak.<script>playAudio("aa_doorHinge");</script>
|skip>[Continue]{
(set: $healthDisplay to true)
}]](elseif: $sequence is 11)[Astarion leans against the door for a moment, listening to the cursing and the clatter coming from within the tomb.
(if: $sight >= 3)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He's shaking slightly.](else:)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]
Then he moves quickly away--down the hall and around the corner.
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "trapped")
<script>addAchieve("Turnabout");</script>
}](elseif: $sequence is 12)[The skeleton shrieks and rushes towards it, trying to wedge his sword into the closing gap. He manages stab through and cut Astarion.
<span class='health'>//Astarion Lost 6 Health//</span>(set: $health_change to -6)(display: "update health silent")
Then inertia and weight do their work, snapping the sword in two as the door slams shut.
|prev>[Continue]{
}](elseif: $sequence is 13)[
](elseif: $sequence is 14)[You run your hands over and through the edge of the door, searching it by insubstantial touch.
There is a part of the door where its edge meets the wall. When the door was closed, it wasn't visisble. But now that it's open, You discover there is something |exp1>[wedged into this space.](click: ?exp1)[ //It's embedded half in the door--cutting into the stone as if it were soft wood.//]
It's a fang. As long as your arm. Curved and sharp.(set: $foundFangTomb to true)(set: $tickOnReturn to true)
|skip>[Take it.]
|returnTick>[Leave it.]{
}](elseif: $sequence is 15)[There is a part of the door where its edge meets the wall. When the door was closed, it wasn't visisble. But now that it's open, you see that there is something |exp1>[wedged into this space.](click: ?exp1)[ //It's embedded half in the door--cutting into the stone as if it were soft wood.//]
It's a fang. As long as your arm. Curved and sharp.(set: $foundFangTomb to true)
|next>[Take it.]
|return>[Leave it.]{
}](elseif: $sequence is 16)[You take the fang.
(display: "Take Fang")
|returnTick>[Continue]{
(set: $tookFangTomb to true)
}](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[
]{
(display: "Tomb Frame")
(click: ?returnTick)[(set: $sequence to 0)(if: $tickOnReturn is true)[(set: $time to it+1)](set: $tickOnReturn to false)(go-to: $currentPassage)]
(click: ?goHallway)[(set: $sequence to 0)(go-to: "Hallway")]
(click: ?goHallwaySkeleton)[(set: $sequence to 0)(go-to: "Hallway With Skeleton")]
(click: ?godeyArrives)[(set: $sequence to 8)(go-to: "Hallway")]
(click: ?trapGodey)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?escapeHallway)[(set: $sequence to 0)(go-to: "Escaping Dungeon")]
}{
(set: $player_weapon_damage to 2)
(if: $class is "fighter" or $class is "monk" or $class is "barbarian")[
(set: $player_weapon_damage to it+2)
]
(if: $bastellusFangs > 1 and $gaveAstarionFangs is not true)[
(set: $player_weapon_damage to it+$bastellusFangs)
](elseif: $player_inventory contains 'knife' and $knife_nature is "assassin")[(set: $player_weapon_damage to it+4)]
(elseif: $player_inventory contains 'knife')[(set: $player_weapon_damage to it+2)]
(elseif: $class is "monk")[(set: $player_weapon_damage to it+2)]
(if: $currentPassage is "Nightmare" and $player_weapon_damage > 4)[
(set: $player_weapon_damage to 4)
]
(set: $astarion_weapon_damage to 2)
(set: $astarion_sneak_damage to 12)
(if: $currentPassage is "Nightmare")[
(set: $astarion_weapon_damage to it+6)
(set: $astarion_sneak_damage to it+6)
]
(if: $bastellusFangs > 1 and $gaveAstarionFangs is true)[
(set: $astarion_weapon_damage to it+6+$bastellusFangs)
(set: $astarion_sneak_damage to it+6+$bastellusFangs)
](elseif: $astarion_inventory contains 'knife' and $knife_nature is "assassin")[(set: $astarion_weapon_damage to it+6)(set: $astarion_sneak_damage to it+6)]
(elseif: $astarion_inventory contains 'knife')[(set: $astarion_weapon_damage to it+4)(set: $astarion_sneak_damage to it+4)]
(elseif: $astarion_inventory contains 'rusty dagger')[(set: $astarion_weapon_damage to it+2)(set: $astarion_sneak_damage to it+2)]
}(if: $time is 7 and $hallway_hiding_spot is "door" and $enemyHealth > 0)[Astarion hears the skeleton drawing near. He lunges out from behind the door and attacks.
|startFight>[Rolling initiative.]{
(set: $healthDisplay to true)
}](elseif: $time is 8 and $hallway_hiding_spot is "corpse" and $enemyHealth > 0)[While the skeleton is examining the tomb, Astarion leaves his hiding spot behind the corpse and creeps closer.
He lashes out, stabbing the skeleton though a chink in his armor, shattering a joint.
<span class='health'>//Godey Lost $astarion_sneak_damage Health//</span>(set: $enemyHealth to it-$astarion_sneak_damage)<script>playAudio("aa_damage");</script>
The skeleton wheels around.
|startFight>[Rolling initiative.]{
(set: $healthDisplay to true)
}](elseif: $time is 9 and $hallway_hiding_spot is "alcove" and $enemyHealth > 0)[As the skeleton stalks down the hallway towards the dead end, Astarion slips out of his hidden alcove.
He moves quickly and quietly away, down the hall and around the corner.
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "evaded")
}](elseif: $sequence is 0)[You are at the end of a stone hallway. Spikes line the walls, hung with chains like garlands.
An open stone door leads into a tomb.
(if: $hallway_hiding_spot is "door")[Astarion is hiding behind one of the stone doors.
](elseif: $hallway_hiding_spot is "corpse")[Astarion is hiding near the dead-end of the hallway, concealed behind another corpse hanging off the wall.
](elseif: $hallway_hiding_spot is "alcove")[Astarion isn't visible.
]
(if: $time is 6)[An armored skeleton is carefully searching the hallway. He is moving to look behind the stone doors.
](elseif: $time is 7)[An armored skeleton is peering inside of the tomb.
$godey No. You wouldn't stay inside. Restless child.
](elseif: $time is 8)[An armored skeleton is walking slowly down the hall, examining the shadows.
$godey Here boy. Come out, come out.
]
(if: not ($astarion_act3_talked contains "godeyWho"))[<span id="godeyWho" class="energy-link" data-content="Speak to Skeleton: Who are you?/Speech/4/2"></span>
](if: not ($astarion_act3_talked contains "godeyGone"))[<span id="godeyGone" class="energy-link" data-content="Speak to Skeleton: He`s gone./Speech/4/2"></span>
](elseif: not ($astarion_act3_talked contains "godeyLetGo"))[<span id="godeyLetGo" class="energy-link" data-content="Speak to Skeleton: Let him go./Speech/4/2"></span>
](if: $speech is 6)[<span id="shout" class="energy-link" data-content="Shout at skeleton./Speech/6/+1"></span>](else:)[<span id="noise" class="energy-link" data-content="Make a distracting noise./Speech/5/+1"></span>]
(if: $player_inventory contains 'knife' and $touch is 6)[<span id="stab" class="energy-link" data-content="Stab him./Touch/6/+1/3"></span>](else:)[<span id="hit" class="energy-link" data-content="Hit skeleton./Touch/6/+1/3"></span>]
<span id="push" class="energy-link" data-content="Push skeleton./Touch/3/+1/1"></span>
|tomb>[Return to the tomb.]
|wait>[Wait.]{
(set: $healthDisplay to true)
(set: $inventory_link_display to true)
}](elseif: $sequence is 1)[(set: $time to it+1)(set: $godey_aware_of_ghost to true)(set: $talk_godey_hallway to it+1)(if: $just_said is "shout" or $just_said is "noise")[The skeleton doesn't stop searching, but glances at the section of hall where the sound came from.
$godey Fussing ghosts. Not Godey's job.
](elseif: $just_said is "stab" or $just_said is "hit")[You attack the skeleton.
<span class='health'>//Godey Lost $player_weapon_damage Health//</span>(set: $enemyHealth to it-$player_weapon_damage)<script>playAudio("aa_damage");</script>
(if: $godey_attacked_once is true)[He grunts irritably. He doesn't stop searching.](else:)[He makes a token effort to stab you back, finds that to be ineffective, and shrugs.
$godey Little ghostie will get tired before Godey gets any more dead.(set: $godey_attacked_once to true)]
](elseif: $just_said is "push")[The skeleton sways slightly as something invisible shoves him. He stops to flick his sword through you. It passes harmlessly.
$godey Fussing ghosts. Not Godey's job.
]
(if: $hallway_hiding_spot is "door" and $time is 7)[|ambushAttack>[Continue](set: $time to 8)](elseif: $hallway_hiding_spot is "alcove")[|distrctionEscape>[Continue]](elseif: $hallway_hiding_spot is "door" and $talk_godey_hallway is 3)[|improveHidingSpot>[Continue]](elseif: $hallway_hiding_spot is "corpse" and $talk_godey_hallway is 3)[|distrctionEscape>[Continue]](else:)[|return>[Continue]]{
}](elseif: $sequence is 2)[The skeleton pauses in his search to respond to you.(set: $talk_godey_hallway to it+1)
(if: $just_said is "godeyWho")[(if: $godey_aware_of_ghost is false)[$godey Hm. A ghost?
]$godey Godey is the kennel master.
$godey I keep the spawn in line. Keep them where they should be.
](elseif: $just_said is "godeyGone")[(if: $godey_aware_of_ghost is false)[$godey Hm. A ghost?
]$godey Gone. But not far.
$godey Godey will find him.
$godey They always come back to me.
](elseif: $just_said is "godeyLetGo")[$godey Foolish ghost. This is for his own good.
$godey The master closed this door. And now it opens. Not by the master's hand.
$godey There will be blood to pay if the master finds out.
$godey But we can keep this in the dungeon? Hm? Between us?
He shouts this last sentence, no longer speaking to you.
]
(if: $hallway_hiding_spot is "corpse" and $talk_godey_hallway is 3)[|distrctionEscape>[Continue]](elseif: $hallway_hiding_spot is "alcove")[|distrctionEscape>[Continue]](elseif: $hallway_hiding_spot is "door" and $talk_godey_hallway is 3)[|improveHidingSpot>[Continue]](else:)[|return>[Continue]]{
(set: $astarion_act3_talked to it+$just_said)
(set: $godey_aware_of_ghost to true)
}](elseif: $sequence is 3)[As you distract the skeleton, you can see Astarion moving.
He slips out from behind the door and into a better hiding place, down the hall.
|return>[Continue]{
(set: $hallway_hiding_spot to "corpse")
(set: $talk_godey_hallway to 0)
}](elseif: $sequence is 4)[As you distract the skeleton, you can see Astarion moving.
(if: $hallway_hiding_spot is "corpse")[He slips unseen behind the skeleton and away down the hall.](else:)[He slips unseen out of the hidden alcove and away down the hall.]
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "evaded")
}](elseif: $sequence is 5)[Astarion takes advantage of the brief distraction, jumping out from behind the door.
He lashes out, stabbing the skeleton though a chink in his armor, shattering a joint.
<span class='health'>//Godey Lost $astarion_sneak_damage Health//</span>(set: $enemyHealth to it-$astarion_sneak_damage)<script>playAudio("aa_damage");</script>
The skeleton wheels around, raising his sword and cackling.
(set: $godey_surprised to true)
|startFight>[Rolling initiative.]{
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[Astarion stares at the mound of metal and bone.
He takes a few steps back from it. He turns his weapon over in his hands.
He giggles a little shrilly.
Then he turns and moves quickly away--down the hall and around the corner.
|escapeHallway>[You feel yourself pulled after him.]{
(set: $godey_state to "dead")
(set: $enemyHealthDisplay to false)
<script>addAchieve("Murder Godey");</script>
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?improveHidingSpot)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?distrctionEscape)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?ambushAttack)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?tomb)[(set: $sequence to 0)(go-to: "Open Tomb")]
(click: ?startFight)[(set: $sequence to 0)(go-to: "Godey")]
(click: ?escapeHallway)[(set: $sequence to 0)(go-to: "Escaping Dungeon")]
(if: $hallway_spike_state is "broken")[<script>changeBackground("hallwaySpikeBroken");</script>]
(else:)[<script>changeBackground("hallwaySpike");</script>]
}(if: $sequence is 0)[{
(set: $round_number to 0)
(set: $healthDisplay to true)
(set: $next_round_text to "Next Round")
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
There is an armored skeleton with a broadsword. He is surprised that he's being attacked.
Astarion is trying to stab the skeleton.(set: $astarion_action to "stab")
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 1)[<span class="emph">//Your Turn//</span>
(if: $just_said is "sayStop")[Your quiet words are lost in the chaos.
](display: "Default Action Results Godey"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "stab")[Astarion acts first, and manages to attack the skeleton particularly effectively. <span class='health'>//Godey Lost $astarion_sneak_damage Health//</span>(set: $enemy_damange to it+$astarion_sneak_damage)
]<span class="emph">//Godey's Turn//</span>(display: "Check Enemy Death")
Godey is surprised, and takes no action.
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 2)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The skeleton is attacking Astarion with his sword.(set: $enemy_action to "sword taunt")
Astarion is trying to stab the skeleton.(set: $astarion_action to "stab")
(display: "Attack Ghost Options")
<span id="sayCazador" class="energy-link" data-content="Speak: Cazador is coming./Speech/4/+1/1"></span>
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 3)[<span class="emph">//Your Turn//</span>
(if: $just_said is "sayCazador")[You say: 'Cazador is coming.'
Both combatants visibly flinch, and look towards the mouth of the hallway.(set: $enemy_action to "flinch")(set: $astarion_action to "flinch")
When it becomes clear this is not actually the case, they go back to fighting.
](display: "Default Action Results Godey"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "flinch")[Astarion is completely distracted, and does nothing.
](elseif: $astarion_action is "stab")[Astarion stabs at the skeleton. <span class='health'>//Godey Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]<span class="emph">//Godey's Turn//</span>(display: "Check Enemy Death")
(if: $enemy_action is "flinch")[Godey is completely distracted, and does nothing.
](elseif: $enemy_action is "sword taunt")[The skeleton clubs Astarion with the flat of his sword. <span class='health'>//Astarion Lost 8 Health//</span>(set: $astarion_damange to it+8)
$godey Hush boy. You've had your bite. Now lie down like a good doggie.
](else:)[(display: "Default Godey Results")
]
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 4)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The skeleton is attacking Astarion with his sword.(set: $enemy_action to "sword taunt")
Astarion is trying to dodge away and hide.(set: $astarion_action to "hide")
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 5)[<span class="emph">//Your Turn//</span>
(display: "Default Action Results Godey"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "hide")[Astarion retreats around the tomb door, trying to use it as cover.
]<span class="emph">//Godey's Turn//</span>(display: "Check Enemy Death")
(if: $enemy_action contains "sword" and $enemy_distract_count > 2)[You've annoyed Godey enough that he ineffectually lashes out at you.(set: $ghost_distract_count to 0)(set: $enemy_action to "attack player")
](elseif: $enemy_action is "sword taunt")[The skeleton catches Astarion a glancing glow as he retreats. <span class='health'>//Astarion Lost 4 Health//</span>(set: $astarion_damange to it+4)
](else:)[(display: "Default Godey Results")
](if: $enemy_action contains "sword")[
$godey What are you <i>doing</i>? Haven't you learned the cost?
](elseif: $enemy_action contains "attack player")[
$godey Stay out of this, meddlesome thing!
]
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 6)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The skeleton is stalking around the door, searching for Astarion.(set: $enemy_action to "search")
Astarion is climbing up the side of the door.(set: $astarion_action to "climb")
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 7)[<span class="emph">//Your Turn//</span>
(display: "Default Action Results Godey"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "climb")[Astarion makes it to the top of the door in a feat of desperate and almost spider-like athleticism.
]<span class="emph">//Godey's Turn//</span>(display: "Check Enemy Death")
(if: $enemy_action is "search")[Godey rounds the door and is surprised to find no one there.
](else:)[(display: "Default Godey Results")
](if: $enemy_action contains "search")[
$godey It will be worse for you if you get out.
$godey Come with Godey. Back in the grave. We'll just forget this ever happened.
]
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 8)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The skeleton is looking around, perplexed.(set: $enemy_action to "search")
$godey What has gotten into you, Astarion?
Astarion is about to drop down on top of him.(set: $astarion_action to "ambush")
<span id="goodbye" class="energy-link" data-content="Speak: Goodbye./Speech/2/+1/1"></span>
(display: "Attack Ghost Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 9)[<span class="emph">//Your Turn//</span>
(if: $just_said is "goodbye")[You say farewell. The skeleton turns towards you, head tilted quizzically.
](display: "Default Action Results Godey"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "ambush")[Astarion lands on top of Godey, driving his weapon into a weak chink between helmet and armor. <span class='health'>//Godey Lost 30 Health//</span>(set: $enemy_damange to it+30)
]<span class="emph">//Godey's Turn//</span>(display: "Check Enemy Death")
(display: "Default Godey Results")
|nextRound>[$next_round_text]{
(display: "Round Ends")
}](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
]{
(click: ?nextRound)[
(if: $enemyHealth is 0)[(set: $sequence to 10)(go-to: "Hallway With Skeleton")]
(else:)[(set: $sequence to it+1)(go-to: $currentPassage)]
]
}(if: $sequence is 0)[Astarion is walking quickly down another |exp1>[stone hall lined with epitaphs and chains.](click: ?exp1)[ //It's hard to tell if this place is a tomb or a dungeon. It feels like both.//]
It seems like he knows where he's going.
|next>[He speaks to you.]{
(set: $enemyHealthDisplay to false)
<script>changeBackground("");</script>
(set: $healthDisplay to true)
}](elseif: $sequence is 1)[(if: $godey_state is "trapped")[$astarion You did that, didn't you?<script>updateTrust(1);</script>
$astarion Made a sound and lured Godey in?
$astarion You're my favorite ghost.
$astarion Shadow. Whatever you are. Dream thing.
$astarion I want you to know that.
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1"></span>
<span id="know" class="energy-link" data-content="Speak: I know./Speech/3/+1"></span>
|next>[Do nothing.]
](elseif: $godey_state is "dead")[$astarion I killed Godey.
$astarion Well. Dreamed of it. I suppose.
$astarion That's nothing new.
$astarion It's a very vivid dream, though.
|next>[Continue]
](elseif: $godey_state is "evaded")[$astarion I would have loved to kill Godey.
$astarion Even in a dream.
$astarion But it's better that we didn't.
|next>[Continue]
]{
}](elseif: $sequence is 2)[(if: $godey_state is "trapped")[$astarion That was the best possible outcome.
$astarion Fast and quiet.
$astarion The master notices things like noise. Violence. Disorder.
$astarion We should avoid things like that.
//New Stat Unlocked: <span class="attention">His Attention</span>//(set: $his_attention_display to true)
](elseif: $godey_state is "evaded")[$astarion That was a good outcome.
$astarion Fast and quiet.
$astarion The master notices things like noise. Violence. Disorder.
$astarion We should avoid things like that.
//New Stat Unlocked: <span class="attention">His Attention</span>//(set: $his_attention_display to true)
](elseif: $godey_state is "dead")[$astarion But we should avoid murder.
$astarion In general. At the moment.
$astarion Avoid violence. Noise. Disorder.
$astarion The master notices things like that.
//New Stat Unlocked: <span class="attention">His Attention</span>//(set: $his_attention_display to true)
]<span id="who" class="energy-link" data-content="Speak: Who?/Speech/2/+1"></span>
<span id="master" class="energy-link" data-content="Speak: Master?/Speech/2/+1"></span>
<span id="okay" class="energy-link" data-content="Speak: Okay./Speech/2/4"></span>
|skip>[Do nothing.]
](elseif: $sequence is 3)[$astarion The...Cazador.
$astarion Cazador Szarr.
(if: $asked_list contains "who-cazador")[$astarion I thought I told you.
](elseif: $asked_list contains "where-cazador" or $asked_list contains "murder-cazador")[$astarion I thought you knew.
]$astarion He's the master of this place.
$astarion He locked me in there. He's here somewhere.
$astarion If he notices I'm...
$astarion He needs to not notice me. We need to avoid attracting his attention.
|next>[Continue]
](elseif: $sequence is 4)[$astarion That bit with Godey.
(if: $godey_state is "dead")[$astarion That was loud.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>](else:)[$astarion That was quiet.
//No change.//]
(if: $godey_state is "dead")[$astarion Godey's dead. Can't tell him I'm out.
//No change.//](elseif: $godey_state is "trapped")[$astarion Godey's trapped. Can't tell him I'm out.
//No change.//](elseif: $godey_state is "evaded")[$astarion Godey will search down here for a while, but eventually he'll go tell the master I'm out.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
$astarion It took time.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>
$astarion If (if: $astarion_trust > 9)[we](else:)[I] take too long, Cazador will find me.
$astarion He always finds me.
|next>[Continue]
](elseif: $sequence is 5)[$astarion We just have to be fast. And quiet.
Astarion reaches a flight of stairs. Climbs it.
$astarion And find a place that feels like freedom.
He reaches a door.
$astarion Inside of the Szarr Palace.
He pauses at the door, hand on the handle, eyes distant. Reflecting on what he just said.
He laughs a little threadily.
He opens the door.
|goToKennel>[It leads to a torture chamber.]
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?goToKennel)[
(set: $sequence to 1)
(set: $time to 1)
(set: $timeReached to 0)
(set: $currentArea to "Kennel")
(set: $violetInterestInGhost to 0)
(set: $violetOfferHurt to false)
(set: $violetAnsweredQuestion to false)
(set: $violetFree to false)
(set: $violetSilenced to false)
(set: $violetHasFlower to false)
(set: $violetEscalating to "empty")
(set: $violetWillStab to false)
(set: $astarionPersuaded to 0)
(set: $astarionMentionedSiblings to false)
(set: $foundShimmerKennel to false)
(set: $unvisitedLocations to it-(a:"kennel"))
(set: $escapingKennel to "trapped")
(go-to: "Kennel")
]
}(if: $just_said is "stab" or $just_said is "hit")[You $just_said the skeleton. <span class='health'>//Godey Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
](if: $just_said is "push" or $just_said is "touch")[You $just_said the skeleton. He grunts irritably at you.(if: $just_said is "push")[(set: $enemy_distract_count to it+2)](else:)[(set: $enemy_distract_count to it+1)]
](if: $just_said is "nothing")[You do nothing.
](if: $enemy_action contains "sword" and $enemy_distract_count > 2)[You've annoyed Godey enough that he ineffectually lashes out at you.(set: $ghost_distract_count to 0)(set: $enemy_action to "empty")
](if: $enemy_action is "sword distracted")[The skeleton attacks Astarion, but is distracted and does less damage. <span class='health'>//Astarion Lost 3 Health//</span>(set: $astarion_damange to it+3)
](if: $enemy_action is "sword")[The skeleton swings his sword at Astarion. <span class='health'>//Astarion Lost 8 Health//</span>(set: $astarion_damange to it+8)
](if: $enemy_action is "die")[The skeleton crumbles into a pile of bones and metal.
](if: $escapingKennel is not "trapped")[(set: $sequence to 0)(goto: "Escaping Kennel")
](elseif: $sequence is 0)[You are in a torture chamber.
There is a stained table covered in sharp tools. Chains decorate the walls. (if: $foundShimmerKennel is false)[(if: $sight >= 3)[ <span class="text-shimmer-long">Something gleams</span> near the chains.](else:)[ //Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]]
A corner is piled with mattresses and wooden boxes.
(if: $violetFree is true)[Violet is here.](elseif: $violetSilenced)[Violet is chained kneeling to the ground. Her throat has been cut and she looks pissed about it.](else:)[Violet is chained kneeling to the ground.]
(display: "Kennel Update")
(if: $player_inventory contains 'ring of keys')[<span id="keys" class="energy-link" data-content="Unlock the door./Touch/1/33/2"></span>
]|table>[Examine the table.]
|chains>[Examine the chains.]
|corner>[Examine the corner.]
|violet>[Examine Violet.]
|wait>[Wait.]
{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[You are in a torture chamber.
There is a stained table covered in sharp tools. Chains decorate the walls.
A corner is piled with mattresses and wooden boxes.
A woman is chained kneeling to the ground. Her name is Violet.
She speaks to Astarion.
//Click <span class="emph">Watch</span> to watch what Astarion does, and perhaps interfere.//
//Click <span class="emph">Explore</span> to do something on your own.//{
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
}](elseif: $sequence is 2)[There are chains of many different lengths, ending in manacles of many different makes. Some are elaborate. Some are simple.(if: $foundShimmerKennel is false)[
Something <span class="text-shimmer-long">gleams in the air.</span>]
(display: "Kennel Update")
(if: not ($astarion_drew_attention contains "chains"))[<span id="chains" class="energy-link" data-content="Draw attention to chains./Draw/0/5"></span>
](if: $foundShimmerKennel is false)[|next>[Examine the gleam.]
]|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 3)[The <span class="text-shimmer-long">gleaming in the air</span> is bright, indistinct, and familiar.
It feels friendly.
|next>[Reach out.]
|chains>[Back away.]{
}](elseif: $sequence is 4)[You touch the shimmering. It's warm. You you see a gleam of silver out of darkness. You hear a quiet, sensible voice saying something you can't quite make out.
For a moment, you feel like someone else is present.
<span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)<script>playAudio("aa_tap2");</script>
|chains>[The shimmering fades away.]{
(set: $foundShimmerKennel to true)
<script>playAudio("aa_tap2");</script>
}](elseif: $sequence is 5)[Astarion glances at the chains.
$astarion They could conceivably be useful.
$astarion But I don't have time to get them off the wall.
|chains>[Continue]{
(set: $astarion_drew_attention to it+"chains")
(set: $time to it+1)
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[Violet is an |exp1>[elf with] grey-white hair and bright red eyes.(if: $violetSilenced is true)[ Her throat has been slit and she looks pissed about it.](if: $violetHasFlower is true)[ She's holding a small, blue flower.]
(if: $violetFree is true)[She's sitting crosslegged next to Astarion.](else:)[She is kneeling on the ground. Her hands are manacled flush with the floor.]
(if: $sight is 1)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](elseif: $sight is 2)[There's something wrong with her hand.](elseif: $sight > 2)[Her right hand is broken and bent in terrible ways.](if: $violetFree is false)[
A few implements are spread out next to her. A large hammer. A small hammer. (if: $objects_taken contains 'pliers')[A set of new-looking pliers.](else:)[A set of old, worn pliers.]]
(display: "Kennel Update")
|gray>[Speak to Violet.](click: ?gray)[//Violet is focused on the visible person in the room. If you want to speak to her, you will have to <span class="emph">Watch</span> for chances to interject yourself into the conversation.//]
(if: $violetFree is not true)[(if: $violetEscalating is not "empty")[|gray1>[Unlock Violet's manacles.](click: ?gray1)[//That doesn't feel like a good idea right now.//]](elseif: $player_inventory contains 'ring of keys')[<span id="keys" class="energy-link" data-content="Unlock Violet`s manacles./Touch/1/9/2"></span>](else:)[|gray1>[Unlock Violet's manacles.](click: ?gray1)[//You don't have the key.//]]
](if: $player_inventory contains 'toolkit' and $class is "rogue" and $violetFree is not true)[(if: $violetEscalating is not "empty")[|gray2>[`[ROGUE]` Pick lock on manacles.](click: ?gray2)[//That doesn't feel like a good idea right now.//]](else:)[<span id="toolkit" class="energy-link" data-content="[ROGUE] Pick lock on manacles./Touch/4/9/5"></span>]
](if: $player_inventory contains 'blue flower')[(if: $violetEscalating is not "empty")[|gray3>[Give flower to Violet.](click: ?gray3)[//Violet isn't in a flowers mood anymore.//]](else:)[<span id="flower" class="energy-link" data-content="Give flower to Violet./Touch/0/11/1"></span>]
]|return>[Do something else.]{
(click-replace: ?exp1)[|exp2>[elf with //(wait...)//](click-replace: ?exp2)[|exp3>[elf with very slightly rounded ears and an unusually stocky build](click-replace: ?exp3)[half-elf with]]]
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 9)[You unlock Violet's manacles, freeing her.(set: $violetFree to true)
(if: $violetInterestInGhost is 0)[She stares at her bare wrists not really understanding what just happened.
Then she shrugs and scuttles over to watch what Astarion's doing.
](elseif: $violetOfferHurt is true)[$violet Nice.
$violet When you want me to hurt someone, just say my name. Okay? Okay.
She scuttles over to watch what Astarion's doing.
](else:)[$violet Oh. Huh.
$violet Ghost stuff. Okay.
She shrugs and scuttles over to watch what Astarion's doing.
]
|violet>[Continue]{
(set: $time to it+1)
}](elseif: $sequence is 10)[
](elseif: $sequence is 11)[$violet What's that?(set: $violetHasFlower to true)
<span class='inv'>Tav lost blue flower.</span>(set: $player_inventory to it - (a: 'blue flower'))
Violet accepts the flower with her left hand as it emerges from darkness.(if: $violetFree is not true)[ It's awkward with the manacles, but she's dexterous enough to manage.]
$violet Oh.
$violet This is pretty.
$violet I like this.
|violet>[Continue]{
(set: $time to it+1)
}](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[There is a stained table covered in sharp tools.
On top of it you see:(set: $nothingLeft to true)
(if: not ($objects_taken contains "rusty dagger"))[<span id="rusty_dagger" class="energy-link" data-content="A rusty dagger./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "surgery kit"))[<span id="surgery_kit" class="energy-link" data-content="A surgery kit./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "blue flower"))[<span id="blue_flower" class="energy-link" data-content="A blue flower./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "rags"))[<span id="rags" class="energy-link" data-content="Bloodstained rags./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: $objects_taken contains "rags" and not ($objects_taken contains "ring of keys"))[<span id="ring_of_keys" class="energy-link" data-content="A ring of keys./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: $nothingLeft is true)[//Nothing more that interests you.//
](display: "Kennel Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 21)[{
(set: $focus to $just_said)
}(if: $focus is "rusty dagger")[A dagger, blunted and stained with rust.
](elseif: $focus is "surgery kit")[A set of tools for performing surgery.(if: $objects_taken contains 'improvised lockpicks')[
All of the hooks and prongs have been removed. Astarion took every piece of this kit that might double as a lockpicking tool.]
](elseif: $focus is "blue flower")[A dark blue flower in the midst of its bloom.
The shape of its petals makes you think it's an orchid.
](elseif: $focus is "rags")[A mound of greyish rags, crusted with old blood.
](elseif: $focus is "ring of keys")[An iron ring with many keys on it.
Most are the small, squat sort of keys that go to manacles. But one is a long, door key.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
<span class="explain">Offer it to Astarion.</span>
]<span id="take" class="energy-link" data-content="Take this./Touch/0/+1"></span>
<span class="explain">Take it for yourself.</span>
|prev>[Something else.]{
}](elseif: $sequence is 22)[(if: $just_said is "draw")[(if: $focus is "rusty dagger")[$astarion No. The one I have is better.
He shows you his knife. It gleams in the dark with an edge of magic.
](elseif: $focus is "surgery kit")[(if: $astarion_inventory contains "toolkit")[$astarion Some of those tools might have been useful, if I didn't have this.
He indicates his set of thieves' tools.](else:)[$astarion I have what I need from that.]
](elseif: $focus is "blue flower")[$astarion That's....
Astarion moves over and picks up the delicate flower from the row of bloodstained equipment.
$astarion That doesn't belong here.
He twirls it between his fingers for a moment, contemplating it. Then he tucks it into his pocket.
<span class='inv'>Astarion gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $astarion_inventory to it+(a: $focus))
//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script>(set: $escape_display to true)<script>addAchieve("Kennel Secret");</script>
](elseif: $focus is "rags")[(if: $blood_drank is true)[$astarion I'm hungry, but I'm not //that// hungry.
](else:)[Astarion stares at the dried blood for a long moment.
$astarion No.
He goes back to what he was doing.
]](elseif: $focus is "ring of keys")[Astarion snatches up the keys immediately.
<span class='inv'>Astarion gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $astarion_inventory to it+(a: $focus))(set: $escapingKennel to "astarion has keys")
$astarion Fantastic.
]|table>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "take")[You take the $focus.
<span class='inv'>$player_name gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $player_inventory to it+(a: $focus))
(if: $focus is "rags")[They are very disgusting to touch, but as you move them, you notice something hidden under the rags.
It's a ring of keys.
]
|table>[Continue]
]{
(set: $time to it+1)
}](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[There is a pile of mattresses and bedding in the corner.
A few rosewood caskets lean against the wall.(if: $sight is 6)[
`[Unlocked: Sight 6]` Something terrible is here.]
(display: "Kennel Update")
|mattresses>[Examine bedding.]
|caskets>[Examine caskets.]
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 26)[Filthy mattresses and bloodflecked blankets.(if: $sight >= 5)[
`[Unlocked: Sight 5]` Something terrible is here.]
(if: not ($astarion_drew_attention contains "bedding"))[<span id="draw" class="energy-link" data-content="Draw attention to bedding./Draw/0/+1"></span>
](if: not ($objects_taken contains "bedding"))[(if: $sight >= 4)[<span id="search" class="energy-link" data-content="Search the bedding./Touch/1/28/2"></span>](else:)[<span id="search" class="energy-link" data-content="Search the bedding./Touch/1/28/4"></span>]
]|corner>[Something else.]{
}](elseif: $sequence is 27)[Astarion regards the soiled sheets and tattered blankets.
$astarion It's really the worst thing about this place.
$astarion To go to sleep. To forget it for a time, insensate.
$astarion Then wake up, and still be here.
He goes back to what he was doing.
|corner>[Continue]{
(set: $astarion_drew_attention to it+"bedding")
(set: $time to it+1)
}](elseif: $sequence is 28)[You search through the frankly disgusting pile of bloodstained mattresses and torn blankets.
It takes effort, since you have to search by touch when you can't see things.
Eventually, you discover a tooth.
|next>[Continue]{
}](elseif: $sequence is 29)[There is a fang as long as your forearm |exp1>[embedded in one of the mattresses.](click: ?exp1)[ //Planted in such a way that it would skewer anyone inattentive enough to lie down.//]
(display: "Take Fang")
|corner>[Continue]{
(set: $objects_taken to it+(a: "bedding"))
(set: $time to it+1)
}](elseif: $sequence is 30)[Rectangular caskets, made of rosewood.
They have no lining but raw wood. There are latches on the outside, to seal them closed.
(if: not ($astarion_drew_attention contains "caskets"))[<span id="draw" class="energy-link" data-content="Draw attention to caskets./Draw/0/+1"></span>
](if: not ($objects_taken contains "caskets"))[(if: $sight >= 4)[<span id="search" class="energy-link" data-content="Search the caskets./Touch/1/32/2"></span>](else:)[<span id="search" class="energy-link" data-content="Search the caskets./Touch/1/32/4"></span>]
]|corner>[Something else.]{
}](elseif: $sequence is 31)[$astarion That's for when Godey gets tired of you, but the master still wants you in the kennel.
$astarion It's a miracle we don't all have claustrophobia.
He goes back to what he was doing.
|corner>[Continue]{
(set: $astarion_drew_attention to it+"caskets")
(set: $time to it+1)
}](elseif: $sequence is 32)[You search through the open and unopen caskets.
It takes effort, since you have to search by touch when you can't see things.
You don't find anything of interest.
|corner>[Continue]{
(set: $objects_taken to it+(a: "caskets"))
(set: $time to it+1)
}](elseif: $sequence is 33)[(set: $sequence to 0)(set: $escapingKennel to "player unlocked door")(goto: "Escaping Kennel")
](elseif: $sequence is 34)[
](elseif: $sequence is 35)[
](elseif: $sequence is 36)[
](elseif: $sequence is 37)[
]{
(click: ?chains)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?violet)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?table)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?corner)[(set: $sequence to 25)(go-to: $currentPassage)]
(click: ?mattresses)[(set: $sequence to 26)(go-to: $currentPassage)]
(click: ?caskets)[(set: $sequence to 30)(go-to: $currentPassage)]
(click: ?speakViolet)[(set: $sequence to 0)(go-to: "Violet")]
<script>
changeBackground("kennel");
</script>
}(if: $sequence is 0)[This is a fanwork based on the game <a class="ext" href="https://baldursgate3.game/" target="_blank">Baldur's Gate 3.</a>
It is also the third Act of a three-part story.
There are two ways to begin:
|skip2>[Play through a summarized version of the first two Acts.]
<span class="explain">A good choice if you're coming to this from the world of Interactive Fiction.</span>
|skip>[Go play the first two Acts in their entirety, then come back.]
<span class="explain">A good choice if you're coming to this from playing BG3.</span>{
(set: $in_intro to false)
(set: $quickstarting to false)
(set: $act2_quickstart to false)
(set: $act3_quickstart to false)
(set: $astarion_learned_dream to 174)
(set: $class to "")
(set: $display_class to "")
(set: $difficulty to $LastDifficulty)
(display: "Act 1 Variables")
(display: "Act 2 Variables")
}](elseif: $sequence is 1)[//Extremely Brief Summary//
You are an adventurer in a fantasy world full of Dungeons and Dragons.
You are traveling with a bunch of adventurer friends. You are all telepathically connected because of |plot>[Plot.] You all have trauma.
Your vampire-rogue friend has a particularly large amount of trauma. His name is Astarion. He is about to be in trouble.
|return>[Continue]{
(click-replace: ?plot)[gestating psychic tadpoles inside your brains.]
}](elseif: $sequence is 2)[The first two Acts are <a href="https://abigailcorfman.com/games/Silence/index.html" target="_blank">available here.</a>
You should start a new game. Then, at any point before the end of Act 2, you can save your game and |exp1>[EXPORT it.](click: ?exp1)[
//There is a little button in the lower left corner of the Save/Load screen that says <b>Export Mode:</b>//]
Then import it here, load it, and continue to play.
<a href="https://abigailcorfman.com/games/Silence/index.html" target="_blank">Go play the first two acts.</a>
|next>[That sounds like a lot of work. I'll just play the summary.]{
}](elseif: $sequence is 3)[You are an adventurer in a fantasy world full of <tw-link class='cyclingLink' data-cycling-texts='["dungeons.", "dungeons and also dragons.", "Dungeons and Dragons, you might say."]' onclick='clickCyclingLink(this, "dungeons.");'>dungeons.</tw-link>
You were captured by |exp3>[mind flayers.]
They infected you with a |exp5>[parasitic tadpole.]
You escaped by working with |exp6>[an eclectic group of other adventurers.]
You are traveling together through a forested countryside. You are |exp4>[searching for a cure.]
What kind of adventurer are you?
{
(click-replace: ?exp1)[|exp2>[dungeons and also dragons.](click-replace: ?exp2)[Dungeons and Dragons, you might say.]]
(click-replace: ?exp3)[mind flayers: //psychic, tentacled, squid-monsters.//]
(click-replace: ?exp4)[searching for a cure //and getting regularly distracted by side-quests.//]
(click-replace: ?exp5)[parasitic tadpole //that will eventually transform you into a mind flayer.//]
(click-replace: ?exp6)[an eclectic group of other adventurers. //They are also infected with tadpoles.//]
<div class="container center" id="first">
<div class="row">
<div class="item" id="item1"><p>|chooseBarbarian>[Barbarian]</p></div>
<div class="item" id="item2"><p>|chooseBard>[Bard]</p></div>
<div class="item" id="item2"><p>|chooseCleric>[Cleric]</p></div>
<div class="item" id="item2"><p>|chooseDruid>[Druid]</p></div>
</div>
<div class="row">
<div class="item" id="item1"><p>|chooseFighter>[Fighter]</p></div>
<div class="item" id="item2"><p>|chooseMonk>[Monk]</p></div>
<div class="item" id="item2"><p>|choosePaladin>[Paladin]</p></div>
<div class="item" id="item2"><p>|chooseRanger>[Ranger]</p></div>
</div>
<div class="row">
<div class="item" id="item1"><p>|chooseRogue>[Rogue]</p></div>
<div class="item" id="item2"><p>|chooseSorcerer>[Sorcerer]</p></div>
<div class="item" id="item2"><p>|chooseWarlock>[Warlock]</p></div>
<div class="item" id="item2"><p>|chooseWizard>[Wizard]</p></div>
</div>
</div>
<style>
div.item {
height: 100px;
width: 100px;
position: relative;
border: 2px solid black;
margin:5px;
float: left;
}
.row{
clear: both;
}
div.item p {
margin: 0;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%)
}
</style>
(click: ?chooseBarbarian)[(set: $sequence to 4)(set: $class to "barbarian")(set: $display_class to "Barbarian")(go-to: $currentPassage)]
(click: ?chooseBard)[(set: $sequence to 4)(set: $class to "bard")(set: $display_class to "Bard")(go-to: $currentPassage)]
(click: ?chooseCleric)[(set: $sequence to 4)(set: $class to "cleric")(set: $display_class to "Cleric")(go-to: $currentPassage)]
(click: ?chooseDruid)[(set: $sequence to 4)(set: $class to "druid")(set: $display_class to "Druid")(go-to: $currentPassage)]
(click: ?chooseFighter)[(set: $sequence to 4)(set: $class to "fighter")(set: $display_class to "Fighter")(go-to: $currentPassage)]
(click: ?chooseMonk)[(set: $sequence to 4)(set: $class to "monk")(set: $display_class to "Monk")(go-to: $currentPassage)]
(click: ?choosePaladin)[(set: $sequence to 4)(set: $class to "paladin")(set: $display_class to "Paladin")(go-to: $currentPassage)]
(click: ?chooseRanger)[(set: $sequence to 4)(set: $class to "ranger")(set: $display_class to "Ranger")(go-to: $currentPassage)]
(click: ?chooseRogue)[(set: $sequence to 4)(set: $class to "rogue")(set: $display_class to "Rogue")(go-to: $currentPassage)]
(click: ?chooseSorcerer)[(set: $sequence to 4)(set: $class to "sorcerer")(set: $display_class to "Sorcerer")(go-to: $currentPassage)]
(click: ?chooseWarlock)[(set: $sequence to 4)(set: $class to "warlock")(set: $display_class to "Warlock")(go-to: $currentPassage)]
(click: ?chooseWizard)[(set: $sequence to 4)(set: $class to "wizard")(set: $display_class to "Wizard")(go-to: $currentPassage)]
}](elseif: $sequence is 4)[You are a <span class="emph">$display_class.</span>
As you adventure you discover that many people have been infected. That it's part of a larger plot. The tadpoles confer psychic powers on their hosts, letting you <tw-link class='cyclingLink' data-cycling-texts='["communicate telepathically.", "share memories.", "bend people to your will.", "do a variety of psychic nonsense."]' onclick='clickCyclingLink(this, "communicate telepathically.");'>communicate telepathically.</tw-link>
A cult of infected calling themselves <span class="emph">True Souls</span> are doing terrible things with these powers.
It's a difficult situation. How difficult do you want your game to be?
|balanced>[Balanced]
//Challenging. You may lose a few times as you learn how to play.//
|explorer>[Explorer]
//Story focused.//{
(click: ?explorer)[(set: $sequence to it+1)(set: $difficulty to "explorer")(go-to: $currentPassage)]
(click: ?balanced)[(set: $sequence to it+1)(set: $difficulty to "balanced")(go-to: $currentPassage)]
}](elseif: $sequence is 5)[One of your companions is an Elven vampire named Astarion.
Astarion is eloquent, cynical, capricious, manipulative, playful, cruel, deeply traumatized, and gleeful about his newly regained freedom.
He is also a competent rogue. Good at picking locks, disarming traps, and stabbing people in the back.
Many of Astarion's worse qualities can be traced back to the centuries of slavery he's endured under a sadistic vampire lord named Cazador Szarr. You are only beginning to learn the details of his history.
What is your relationship with Astarion?
|skip>[Companions.]
|skip>[Close friends.]
|skip>[We're in love.]
|next>[I tolerate him because he's useful.]
|next>[I can't stand him.]{
}](elseif: $sequence is 6)[This game does presuppose that your character cares what happens to Astarion.
|exp1>[If you don't like him ](click: ?exp1)[
//(which is a very legitimate opinion to have, he is an asshole)//
]you should probably not play this game.
|next>[I'll endure, let me play.]
|next>[I'll roleplay as someone who likes Astarion.]
|goToTitle>[This isn't for me, then. Let's go back to the title screen.]{
}](elseif: $sequence is 7)[You are a $display_class, on an adventure with your six companions. You are traveling through the forest. You make camp one night.
In the middle of the night you wake up.
|next>[Because everyone in your camp is screaming.]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
}](elseif: $sequence is 8)[You and all of your companions are <tw-link class='cyclingLink' data-cycling-texts='["connected.", "blessed.", "cursed.", "changed."]' onclick='clickCyclingLink(this, "connected.");'>connected.</tw-link>
You can share <tw-link class='cyclingLink' data-cycling-texts='["thoughts.", "emotions.", "memories."]' onclick='clickCyclingLink(this, "thoughts.");'>thoughts.</tw-link>
Something has slithered into that connection.
It is called a |exp1>[bastellus.](click: ?exp1)[ //Your wizard, Gale, identifies it.//]
It weaves nightmares from your worst memories and drinks your pain.
|next>[Continue]{
<style> body{ background: #040c01; } </style>
}](elseif: $sequence is 9)[You manage to wake up.
You manage to wake up |exp1>[five of your companions.](click: ?exp1)[ //They are shaken, but safe.//]
Astarion is still asleep and will not be roused.
You try to reach out to him through the connection, but it doesn't work as it usually does. There are no thoughts. No memories. There's a chasm where his mind should be.
It's dark and cold and very, very deep. You feel like you're teetering on the edge of it. There might be something at the bottom. You can barely make out what you think is a small, stone room.
|next>[Go there.]
|refuseGame>[No. You're not willing to do that.]
<span class="explain">This will end the game.</span>{
<style> body{ background: #040c01; } </style>
(click: ?refuseGame)[(set: $sequence to 32)(go-to: "Campsite Intro")]
}](elseif: $sequence is 10)[You jump off the edge of the chasm.
You fall
a very
long
way
.
.
.
.
.
|next>[You land in a cold, dark place.]{
(display: "Act 1 Variables")
<style> body{ background: #040c01; } </style>
}](elseif: $sequence is 11)[You arrive in a cold, dark place.
You are a shadow, barely present.
A ghostly thing that must relearn how to exist.
What is most important to you?
|sight>[Sight. To understand my surroundings.]
|speech>[Speech. To be able to communicate.]
|touch>[Touch. To be able to interact with the world.]{
(click: ?sight)[(set: $firstPriority to "Sight")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?speech)[(set: $firstPriority to "Speech")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?touch)[(set: $firstPriority to "Touch")(set: $sequence to it+1)(go-to: $currentPassage)]
(set: $drawAction to "erase")
(display: "decorate campsite")
}](elseif: $sequence is 12)[$firstPriority is your first priority.
(if: $firstPriority is "Sight")[//You can see more clearly.(set: $sight to 3)
You notice details that might be hidden to others.//
](elseif: $firstPriority is "Speech")[//You can whisper. Unintelligibly, but enough to mark your presence.(set: $speech to 3)
You can speak up to two understandable words at a time.//
](elseif: $firstPriority is "Touch")[//You can feel and touch things with your fingertips.(set: $touch to 3)
You can pass through solid objects.
You can push objects with as much force as a small but determined bird.//
]What is next most important to you?
(if: $firstPriority is not "Sight")[|sight>[Sight.]
](if: $firstPriority is not "Speech")[|speech>[Speech.]
](if: $firstPriority is not "Touch")[|touch>[Touch.]
]{
(click: ?sight)[(set: $secondPriority to "Sight")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?speech)[(set: $secondPriority to "Speech")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?touch)[(set: $secondPriority to "Touch")(set: $sequence to it+1)(go-to: $currentPassage)]
(set: $in_act3 to true)
(set: $energyDisplay to true)
}](elseif: $sequence is 13)[{
(set: $priorityArray to (array: "Touch", "Speech", "Sight"))
(set: $priorityArray to it - (a: $firstPriority))
(set: $priorityArray to it - (a: $secondPriority))
(set: $lastPriority to $priorityArray's 1st)
}$secondPriority is your second priority.
(if: $secondPriority is "Sight")[//You can see more clearly.(set: $sight to 2)//
](elseif: $secondPriority is "Speech")[//You can whisper. Unintelligibly, but enough to mark your presence.(set: $speech to 2)
You can speak one understandable words at a time.//
](elseif: $secondPriority is "Touch")[//You can feel and touch things with your fingertips.(set: $touch to 2)
You can pass through solid objects.//
]
Which means that $lastPriority is your last priority.
(if: $lastPriority is "Sight")[//You can barely make out your surroundings.(set: $sight to 1)//
](elseif: $lastPriority is "Speech")[//You can whisper. Unintelligibly, but enough to mark your presence.(set: $speech to 1)//
](elseif: $lastPriority is "Touch")[//You can feel and touch things with your fingertips.(set: $touch to 1)//
]
|next>[You are so much less than you used to be.]{
}](elseif: $sequence is 14)[You are in a tomb.<script>changeBackground("columnsFrame");</script>
Interment niches line the walls. There is a huge stone door, flanked by columns.
A sarcophagus is in the center of the room.
|next>[Continue]{
}](elseif: $sequence is 15)[Astarion is here. He has been here for 152 days.
He is covered in dust. He does not move often.
He does not remember you, or your adventures together.
You tell him you are...
<span id="ghost" class="energy-link" data-content="A ghost./Speech/2/+1/0"></span>
<span id="dream" class="energy-link" data-content="A dream./Speech/2/+1/0"></span>
<span id="friend" class="energy-link" data-content="A friend./Speech/2/+1/0"></span>(if: $speech < 2)[
<span id="nothing" class="energy-link" data-content="Nothing. You can`t speak./Speech/1/+1/0"></span>]{
(set: $healthDisplay to true)
}](elseif: $sequence is 16)[(if: $just_said is "dream")[You tell Astarion he's dreaming.
Astarion's immediate skepticism erodes slightly under the appeal of the idea that his entire life if a nightmare that he might wake from.(set: $astarion_learned_dream to 163)
](elseif: $just_said is "friend")[Astarion frowns skeptically.
$astarion_name I don't...
He hesitates.
$astarion_name Do as you wish, I suppose.
He privately assumes that you are a ghost.
](elseif: $just_said is "nothing")[You make your presence known with actions.
Astarion assumes that you are a ghost. Someone buried in the tomb.
](else:)[$astarion_name A ghost in a tomb. I suppose you're just as apt as I am.
$astarion_name I suppose I don't mind you being here.
$astarion_name Just be a polite crypt-mate. Hmm?
]
|next>[Continue]{
(if: $just_said is "friend")[<script>updateTrust(2);</script>](else:)[<script>updateTrust(1);</script>]
(set: $what_is_player to $just_said)
(set: $player_term to $just_said)
(if: $just_said is "nothing")[
(set: $what_is_player to "ghost")
(set: $player_term to "ghost")
]
}](elseif: $sequence is 17)[Time passes slowly in the dark.
You have a limited amount of energy. Every slight action you take tires you.
You can |exp1>[practice existing.](click: ?exp1)[
//Speak more words. See more of the world. Affect the space.//]
You can |exp2>[interact with Astarion.](click: ?exp2)[
//Who is slowly dying of solitude. This is a dream where despair is deadly.//]
What do you prioritize?
|prioritizePractice>[Practice.]
|prioritizeAstarion>[Astarion.]{
(click: ?prioritizePractice)[(set: $just_said to "practice")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?prioritizeAstarion)[(set: $just_said to "astarion")(set: $sequence to it+1)(go-to: $currentPassage)]
}](elseif: $sequence is 18)[(if: $just_said is "practice")[You prioritize your practice.
+2 to $firstPriority
+1 to $secondPriority
+1 to $lastPriority
Astarion deals with the silence.
(if: $difficulty is "explorer")[(set: $health_change to -20)](elseif: $difficulty is "balanced")[(set: $health_change to -30)](display: "update health")
|next>[Continue]{
(if: $firstPriority is "Sight")[(set: $sight to it+1)](elseif: $firstPriority is "Speech")[(set: $speech to it+1)](elseif: $firstPriority is "Touch")[(set: $touch to it+1)]
(set: $speech to it+1)
(set: $sight to it+1)
(set: $touch to it+1)
<script>updateTrust(1);</script>
}](elseif: $just_said is "astarion")[You practice only a little.
+1 to $firstPriority
+1 to $secondPriority
Astarion deals with the silence.
(if: $difficulty is "explorer")[(set: $health_change to -10)](elseif: $difficulty is "balanced")[(set: $health_change to -20)](display: "update health")
It's still painful, but not as bad as it would be without your company.
|next>[Continue]{
(if: $firstPriority is "Sight")[(set: $sight to it+1)](elseif: $firstPriority is "Speech")[(set: $speech to it+1)](elseif: $firstPriority is "Touch")[(set: $touch to it+1)]
(if: $secondPriority is "Sight")[(set: $sight to it+1)](elseif: $secondPriority is "Speech")[(set: $speech to it+1)](elseif: $secondPriority is "Touch")[(set: $touch to it+1)]
<script>updateTrust(2);</script>
}]](elseif: $sequence is 19)[Eventually, it occurs to Astarion to ask what your name is.
What do you tell him?
<input type="text" id="playerNameInput" name="fname" value="Tav">
|sayName>[Use this name.]{
(click: ?sayName)[
(set: $sequence to it+1)
<script>
var player_name = $("#playerNameInput").val();
seth("player_name",player_name);
</script>
(go-to: $currentPassage)
]
}](elseif: $sequence is 20)[{
(set: $allow_name to false)
(set: $companion_names_male to (a: "Gale", "Wyll"))
(set: $companion_names_female to (a: "Lae'zel", "Karlach", "Shadowheart"))
(set: $actor_names to (a: "Amelia", "Devora", "Jennifer", "Neil", "Tim", "Theo", "Samantha", "Emma", "Dave", "Tracy", "Matt"))
(set: $generic_no_tadpole to (a: "Volo", "Alfira", "Jaheira", "Dammon", "Rolan", "Zevlor", "Barcus", "Mol", "Dame Aylin", "Aylin", "Isobel", "Aurelia", "Dalyria", "Sebastian", "Petras", "Leon", "Violet", "Yousen", "Blurg", "Emmeline", "Nine-Fingers", "Keene", "Nine-Fingers Keene", "Hope"))
(set: $generic_nope to (a: "Haarlep", "Korrilla", "Ketheric", "Orin", "Gortash", "Sarevok", "Godey"))
(set: $generic_weird to (a: "Withers", "Omeluum", "Orpheus"))
(set: $god_names to (a: "Shar", "Mystra", "Lolth"))
}(if: $companion_names_male contains $player_name)[You can't be $player_name. He's very busy right now.
](elseif: $companion_names_female contains $player_name)[You can't be $player_name. She's very busy right now.
](elseif: $generic_no_tadpole contains $player_name)[You can't be $player_name. They don't have a tadpole.
](elseif: $generic_nope contains $player_name)[Ha. Nope.
](elseif: $god_names contains $player_name)[Ambitious. No.
](elseif: $player_name is "Elminster")[You can't be $player_name. They don't have a tadpole.
Also there's no cheese here.
](elseif: $player_name is "Halsin")[He would very much like to help. But unfortunately, he doesn't have a tadpole. You can't be Halsin.
](elseif: $player_name is "Drizzt")[He would definitely help if he could, and Astarion would probably have a lot of excited questions. But unfortunately, he doesn't have a tadpole. You can't be Drizzt Do'Urden.
](elseif: $player_name is "Scratch")[Scratch is a very, very good boy who does not have a tadpole and is also a dog. You can't be Scratch.
](elseif: $player_name is "Raphael")[Have fun reading Palmarosa, but that makes no sense in this context. You can't be Raphael.
](elseif: $player_name is "Minsc")[Boo says that's a bad idea. You can't be Minsc.
](elseif: $player_name is "Sceleritas Fel")[No. No, I'm not letting you do that.
](elseif: $player_name is "Mizora")[Ha! No.
](elseif: $player_name is "Sigh")[That's dark. I kind of like it. But it doesn't fit with the premise. You can't be Sigh.
](elseif: $player_name is "Astarion")[I think you may be confused.
](elseif: $player_name is "Drizzt")[That would be very exciting, but he doesn't have a tadpole. You can't be Drizzt.
](elseif: $player_name is "Cazador")[I don't have time to deal with your nonsense. No.
](elseif: $player_name is "")[
](elseif: $player_name is "")[
](elseif: $player_name is "Minthara")[This would be so out of character for her. You can't be Minthara.{
}](else:)[(if: $achievement_tav_names contains $player_name)[That's significant.
](elseif: $actor_names contains $player_name)[I thought I recognized your voice.
](elseif: $generic_weird contains $player_name)[Weird flex, but I can see it being possible.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Boo")[...<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
Well, if it makes you happy.
](elseif: $player_name is "Emperor" or $player_name is "The Emperor")[Sure, I guess.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Pidge")[You just came up with that on the spot, didn't you?<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
](elseif: $player_name is "Chara")[The true name.<script>addAchieve("I Guess You Could Conceivably Be Omeluum");</script>
]You are naming yourself (print: $player_name).(set: $allow_name to true)
Is that right?]
(if: $allow_name is false)[|prev>[Try again.]
](else:)[|next>[Yes.]
|prev>[No.]
]{
(if: $allow_name is false)[(set: $refused_name_count to it+1)]
(if: $refused_name_count > 4)[<script>addAchieve("No You Can't Be Scratch");</script>]
}](elseif: $sequence is 21)[Your name is $player_name.
Something |exp1>[changes in the tomb.](click: ?exp1)[
//As things do in dreams.//]
A message appears carved on the door. It's from your companions.
They're trying to get you out.
(set: $health_change to 5)(display: "update health")
|next>[Hope feels strange in this place.]{
<script>updateTrust(2);</script>
}](elseif: $sequence is 22)[The darkness feels different, now. Less oppressive.
You still have a limited amount of energy. Every slight action you take still tires you.
You can |exp1>[practice existing.](click: ?exp1)[
//Speak more words. See more of the world. Affect the space.//]
You can |exp2>[interact with Astarion.](click: ?exp2)[
//Who has latched on to this scrap of hope will all the force of a man with no other options.//]
What do you prioritize?
|prioritizePractice>[Practice.]
|prioritizeAstarion>[Astarion.]{
(set: $energyDisplay to true)
(click: ?prioritizePractice)[(set: $just_said to "practice")(set: $sequence to it+1)(go-to: $currentPassage)]
(click: ?prioritizeAstarion)[(set: $just_said to "astarion")(set: $sequence to it+1)(go-to: $currentPassage)]
}](elseif: $sequence is 23)[(if: $just_said is "practice")[{
(if: $firstPriority is "Sight")[(set: $sight to it+1)](elseif: $firstPriority is "Speech")[(set: $speech to it+1)](elseif: $firstPriority is "Touch")[(set: $touch to it+1)]
(set: $speech to it+1)
(set: $sight to it+1)
(set: $touch to it+1)
(set: $boostByTwo to true)
(if: $sight > 6)[(set: $sight to 6)(set: $boostByTwo to false)](elseif: $touch > 6)[(set: $touch to 6)(set: $boostByTwo to false)](elseif: $speech > 6)[(set: $speech to 6)(set: $boostByTwo to false)]
}You prioritize your practice.
(if: $boostByTwo is true)[+2 to $firstPriority](else:)[+1 to $firstPriority]
+1 to $secondPriority
+1 to $lastPriority
Hope improves things, though not as much as it would with company.
(set: $health_change to 5)(display: "update health")
|next>[Continue]{
}](elseif: $just_said is "astarion")[You practice only a little.
+1 to $firstPriority
+1 to $secondPriority
Hope and company improves even darkness.
(set: $health_change to 10)(display: "update health")
|next>[Continue]{
<script>updateTrust(1);</script>
(if: $firstPriority is "Sight")[(set: $sight to it+1)](elseif: $firstPriority is "Speech")[(set: $speech to it+1)](elseif: $firstPriority is "Touch")[(set: $touch to it+1)]
(if: $secondPriority is "Sight")[(set: $sight to it+1)](elseif: $secondPriority is "Speech")[(set: $speech to it+1)](elseif: $secondPriority is "Touch")[(set: $touch to it+1)]
}]{
}](elseif: $sequence is 24)[You have so much time, but so little energy.
Still, enough to work on a project.
<span id="sarcophagus" class="energy-link" data-content="Help Astarion open the sarcophagus./Speech/0/+1/0"></span>
<span id="potion" class="energy-link" data-content="Help Astarion scrounge ingredients for a healing potion./Speech/0/+1/0"></span>
<span id="burial" class="energy-link" data-content="Help Astarion search the tomb for useful items./Speech/0/+1/0"></span>
<span id="door" class="energy-link" data-content="Help Astarion open the door./Touch/0/+1/0"></span>
<span id="skeleton" class="energy-link" data-content="Attack the skeleton patrolling the hall./Touch/6/+1/0"></span>{
}](elseif: $sequence is 25)[(if: $just_said is "sarcophagus")[Astarion does most of the work, but you assist in small, ghostly ways.
Inside, he finds a magic ring that can produce a blinding spray of colors.
<span class='inv'>Astarion gained a magical ruby ring.</span>(set: $astarion_inventory to it + (a: 'ring'))
](elseif: $just_said is "burial")[You search the tomb for useful items, taking advantage of your intangibility to explore where Astarion cannot.
You uncover a mostly intact burial shroud that he retrieves.
<span class='inv'>Astarion gained a burial shroud.</span>(set: $astarion_inventory to it + (a: 'shroud'))
](elseif: $just_said is "potion")[It's a bit of a long story how you manage to find all of the ingredients for a potion of healing inside a locked tomb.
But you do.
<span class='self'>//Astarion Gained 6 Health//</span>(set: $health_change to 6)(display: "update health silent")
](elseif: $just_said is "door")[You cannot open the door by yourselves. It is completely beyond either of you.
You do contrive to oil the hinges. Which seems wildly optimistic, but it's something to do.(set: $stone_door_oiled to true)
](elseif: $just_said is "skeleton")[You ghost through the stone door and find a skeleton patrolling the hallway.
You hit him as hard as you can, which still not very hard, ghostly as you are.
But it catches him by surprise, and you manage to hurt him and scare him off.(set: $godey_state to "afraid")
]|next>[Continue]{
<script>updateTrust(1);</script>
}](elseif: $sequence is 26)[Your companions begin to send you gifts--new objects that appear in the tomb.
They send you a stuffed teddy bear.
//A comforting object. It will give you energy. It will give Astarion health.//
|keep>[Keep it for yourself.]
|give>[Give it to Astarion.]{
}](elseif: $sequence is 27)[(if: $just_said is "keep")[<span class='inv'>$player_name gained a stuffed bear.</span>
+1 Permanent <span class="energy">Energy</span>{
(set: $player_inventory to it + (a: 'clive'))
(set: $maxEnergy to 11)
(set: $energy to 11)
}](elseif: $just_said is "give")[<span class='inv'>Astarion gained a stuffed bear.</span>
$astarion Is this someone's idea of help? What am I supposed to do with this?
The answer turns out to be: occasionally surreptitiously hold it, when he believes you aren't watching.
<span class='self'>//Astarion Gained 10 Health//</span>(set: $health_change to 6)(display: "update health silent"){
(set: $astarion_inventory to it + (a: 'clive'))
}]
|next>[Continue]
](elseif: $sequence is 28)[Your companions send you a knife.
//A useful weapon.//
|keep>[Keep it for yourself.]
|give>[Give it to Astarion.]{
}](elseif: $sequence is 29)[(if: $just_said is "keep")[<span class='inv'>$player_name gained a knife.</span>
Astarion makes do with what he can find in the tomb.
<span class='inv'>Astarion gained a sharpened shard of pottery.</span>{
(set: $player_inventory to it + (a: 'knife'))
(set: $astarion_inventory to it+(a: "pottery shard"))
}](elseif: $just_said is "give")[<span class='inv'>Astarion gained a knife.</span>
$astarion <i>Oh.</i><script>updateEmotion("calm",10);</script>
$astarion Oh, this is <i>lovely.</i>{
(set: $astarion_inventory to it + (a: 'knife'))
<script>updateTrust(1);</script>
}]
|next>[Continue]
](elseif: $sequence is 30)[The tomb becomes cold. Freezing, winter cold.<script>changeBackground("columnsFrameCold");</script>
(if: $astarion_inventory contains 'shroud')[Astarion wraps himself in the burial shroud he found in the sarcophagus and ignores this.
|skip>[Continue]
](else:)[Your companions send you a crystal, enchanted with warmth.
//This will save Astarion's life. It will be of no use to you.//
|keep>[Keep it for yourself.]
|give>[Give it to Astarion.]{
}]](elseif: $sequence is 31)[(if: $just_said is "keep")[<span class='inv'>$player_name gained a warm, red crystal.</span>
It's cold in the tomb.
Cold doesn't kill vampires. But in this specific circumstance, misery does.
(set: $health_change to (0-$health))(display: "update health"){
(set: $player_inventory to it + (a: 'amber'))
}](elseif: $just_said is "give")[<span class='inv'>Astarion gained a warm, red crystal.</span>
It staves off the worst of the cold.{
(set: $astarion_inventory to it + (a: 'amber'))
<script>updateTrust(1);</script>
}]
|knock>[Continue]{
}](elseif: $sequence is 32)[Your companions send you kit of useful tools.
//This would be very useful for a rogue. Are you a rogue?//
|keep>[Keep it for yourself.]
|give>[Give it to Astarion.]{
}](elseif: $sequence is 33)[(if: $just_said is "keep")[<span class='inv'>$player_name gained a kit of thieves' tools.</span>(set: $player_inventory to it + (a: 'toolkit'))
](elseif: $just_said is "give")[<span class='inv'>Astarion gained a kit of thieves' tools.</span>(set: $astarion_inventory to it + (a: 'toolkit'))
He opens it and immediately rifles through the contents. He seems very satisfied with what he finds.
$astarion Whoever sent this.
$astarion They're my favorite.
]
|knock>[Continue]{
}](elseif: $sequence is 34)[There is one more gift. You are not the one to find it.
You are |exp1>[resting.]//(click: ?exp1)[ You |exp2>[rest often.](click: ?exp2)[ It takes so much energy to do anything.]]//
It's not |exp3>[quite sleep.](click: ?exp3)[ //It's more like existing-less for a while so you can exist more distinctly later.//]
|knockKnock>[Something rouses you.]
](elseif: $sequence is 33)[
](elseif: $sequence is 34)[
]{
(click: ?keep)[(set: $sequence to it+1)(set: $just_said to "keep")(go-to: $currentPassage)]
(click: ?give)[(set: $sequence to it+1)(set: $just_said to "give")(go-to: $currentPassage)]
(click: ?knock)[(set: $sequence to 34)(set: $just_said to "give")(go-to: $currentPassage)]
(click: ?knockKnock)[(set: $sequence to 0)(go-to: "Knock Knock")]
}{
<link rel="preload" as="image" href="./silenceImages/columnsTeethFrame.jpg">
<link rel="preload" as="image" href="./silenceImages/columnsTeethFrameCold.jpg">
<link rel="preload" as="image" href="./silenceImages/columnsTeethFrameVeryCold.jpg">
<link rel="preload" as="image" href="./silenceImages/coffinFrame.jpg">
<link rel="preload" as="image" href="./silenceImages/crestFrame.jpg">
<link rel="preload" as="image" href="./silenceImages/crestFrameCold.jpg">
<link rel="preload" as="image" href="./silenceImages/crestFrameVeryCold.jpg">
<link rel="preload" as="image" href="./silenceImages/widesmile.jpg">
<link rel="preload" as="image" href="./silenceImages/columnsFrame.jpg">
<link rel="preload" as="image" href="./silenceImages/columnsFrameCold.jpg">
<link rel="preload" as="image" href="./silenceImages/columnsFrameVeryCold.jpg">
<link rel="preload" as="image" href="./silenceImages/hallwaySpike.jpg">
<link rel="preload" as="image" href="./silenceImages/hallwaySpikeBroken.jpg">
<link rel="preload" as="image" href="./silenceImages/SilenceTitle.png">
<link rel="preload" as="image" href="./silenceImages/wall.jpg">
<link rel="preload" as="image" href="./silenceImages/gargoyle.jpg">
<link rel="preload" as="image" href="./silenceImages/somethingInTheSky.jpg">
<link rel="preload" as="image" href="./silenceImages/storage.jpg">
<link rel="preload" as="image" href="./silenceImages/ballroom.jpg">
<link rel="preload" as="image" href="./silenceImages/stairwell.jpg">
<link rel="preload" as="image" href="./silenceImages/sigh.jpg">
<link rel="preload" as="image" href="./silenceImages/attention1.jpg">
<link rel="preload" as="image" href="./silenceImages/attention2.jpg">
<link rel="preload" as="image" href="./silenceImages/attention3.jpg">
<link rel="preload" as="image" href="./silenceImages/window.jpg">
<link rel="preload" as="image" href="./silenceImages/windowOpen.jpg">
<link rel="preload" as="image" href="./silenceImages/favor.jpg">
<link rel="preload" as="image" href="./silenceImages/dormitory.jpg">
<link rel="preload" as="image" href="./silenceImages/frontDoorOpen.jpg">
<link rel="preload" as="image" href="./silenceImages/frontDoorClosed.jpg">
<link rel="preload" as="image" href="./silenceImages/hallway.jpg">
<link rel="preload" as="image" href="./silenceImages/office.jpg">
<link rel="preload" as="image" href="./silenceImages/fog.jpg">
<link rel="preload" as="image" href="./silenceImages/kennel.jpg">
<link rel="preload" as="image" href="./silenceImages/sky1.jpg">
<link rel="preload" as="image" href="./silenceImages/sky2.jpg">
<link rel="preload" as="image" href="./silenceImages/sky3.jpg">
<link rel="preload" as="image" href="./silenceImages/rampartsEmpty.jpg">
<link rel="preload" as="image" href="./silenceImages/ramparts.jpg">
<link rel="preload" as="image" href="./silenceImages/kennelTeeth.jpg">
}{
(if: $sequence is 0)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
](else:)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
]
}(if: $time is 1 and $sequence is 0)[$violet Hi Stari.
$astarion Violet.
He's moving cautiously through the room. Towards the table of sharp tools.
$violet I thought you were locked in a crypt.
Astarion doesn't answer her. He's examining the tools on the table.(if: not ($astarion_inventory contains 'knife'))[ He picks up a dagger.(if: $timeReached < $time)[
<span class='inv'>Astarion gained a rusty dagger.</span>]]
$violet Did you somehow get in trouble while locked in a crypt?
<span id="helloViolet" class="energy-link" data-content="Speak to Violet: Hello./Speech/2/+1"></span>
<span id="askViolet" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
|wait>[Wait.]{
(if: $timeReached < $time)[
(if: not ($astarion_inventory contains 'knife'))[
(set: $astarion_inventory to it + (a: 'rusty dagger'))
(set: $objects_taken to it + (a: 'rusty dagger'))
]
]
}](elseif: $time is 1 and $sequence is 1)[(if: $just_said is "helloViolet")[$violet Oh. It's a ghost.
$violet Hi ghost.(set: $violetInterestInGhost to 3)
She turns her attention back to Astarion.
](elseif: $just_said is "askViolet")[$astarion That's Violet.
Astarion murmurs quietly to you.(set: $astarionMentionedSiblings to true)
$astarion She's my sister. By a certain kind of blood.
$astarion I have six siblings. Violet is my youngest sister.
]
|wait>[Continue]{
}](elseif: $time is 2 and $sequence is 0)[$violet I got in trouble. I touched something I shouldn't have. A scroll. With my right hand.
$violet So he told Godey to break all the bones in my right hand.
$violet Do you know how many bones there are in a hand?
$astarion Yes.
He's walked over to a wooden door in the wall. He tries to open it. It's locked.
$violet Why are you here? What did you do?
(if: $violetFree is not true)[<span id="violetOkay" class="energy-link" data-content="Speak to Violet: You`re hurt?/Speech/3/+1"></span>
]<span id="astarionHow" class="energy-link" data-content="Speak to Astarion: How know that?/Speech/4/+1"></span>
|wait>[Wait.]
](elseif: $time is 2 and $sequence is 1)[(if: $just_said is "violetOkay")[(if: $violetInterestInGhost is 0)[$violet Oh. It's a ghost.
]$violet Kind of a stupid ghost, aren't you?(set: $violetInterestInGhost to 3)
$violet Yes. I'm hurt. I'm being tortured. That's how it works.
She turns her attention back to Astarion.
](elseif: $just_said is "astarionHow")[(if: $astarion_trust > 10)[$astarion I just do.
$astarion Don't make a fuss.](else:)[$astarion Look around the room and take a wild guess.]
]
|wait>[Continue]{
}](elseif: $time is 3 and $sequence is 0)[$violet Did Godey let you out? He left because he heard something. What did you do?
Astarion doesn't answer her. (if: $astarion_inventory contains 'toolkit')[He's examining the handle of the door.](else:)[He moves to the table of sharp tools. He picks up a hook, a scalpel, and a long pin.(if: $timeReached < $time)[
<span class='inv'>Astarion gained improvised lockpicks.</span>]]
$violet Was it bad? Maybe he'll forget about me.
(if: $astarion_inventory contains 'toolkit')[Astarion pulls out the thieves' toolkit and spreads it on the floor.](else:)[Astarion moves back to the door and spreads out the improvised tools.]
$violet Are you trying to pick the lock?
$violet Are you trying to escape?
$violet <i>Again?</i>
Astarion doesn't respond. He's focusing on the door.
<span id="violetAgain" class="energy-link" data-content="Speak to Violet: Again?/Speech/2/+1"></span>
<span id="astarionHelp" class="energy-link" data-content="Speak to Astarion: Can I help?/Speech/4/+1"></span>
|wait>[Wait.]{
(if: $timeReached < $time)[
(if: not ($astarion_inventory contains 'toolkit'))[
(set: $astarion_inventory to it + (a: 'improvised lockpicks'))
(set: $objects_taken to it + (a: 'improvised lockpicks'))
]
]
}](elseif: $time is 3 and $sequence is 1)[(if: $just_said is "violetAgain")[(if: $violetInterestInGhost is 0)[Violet is too aghast at what she's just learned to question the fact that something invisible is talking to her.
]$violet Yeah, <i>again.</i> That's why he got locked in a crypt.(set: $violetInterestInGhost to 3)
$violet It was supposed to teach him not to try to escape.
She snorts.
$violet Give that up for a bad job, I guess.
](elseif: $just_said is "astarionHelp")[$astarion There might be a key in the room.
$astarion That would be faster. See if you can find it.
]
|wait>[Continue]{
}](elseif: $time is 4)[(display: "Violet Default"){
}](elseif: $time is 5 and $sequence is 0)[(if: $violetFree is true)[Violet scoots even closer to get a better look at what Astarion is doing to the lock. He scowls irritably at her.
$astarion Do you mind?
$violet I'm not even touching you. I'm just looking.
$astarion I need space to work.
$violet What you need is a smaller hook. That hook's too large.
$astarion Stop backseat lockpicking.
|wait>[Wait.]
](elseif: $violetHasFlower is true)[$violet I have a flower.
Astarion glances at her. Notes that she does, indeed, have a flower. Frowns.
$astarion Where did you get that?
(if: $violetInterestInGhost > 0)[$violet The ghost gave it to me. I think it likes me.
(if: $astarion_trust > 15)[Astarion looks jealously disgruntled by this prospect, and fails. Violet is busy admiring the flower and fails to notice.](elseif: $astarion_trust > 10)[Astarion looks a little irritated by this prospect. Violet is busy admiring the flower and fails to notice.](else:)[$astarion Hmm.]
](else:)[$violet Wouldn't you like to know?
$astarion Nevermind, I stopped caring.
]
|wait>[Wait.]
](elseif: $violetInterestInGhost > 1)[$violet Are you haunting the kennel? Did you die here?(set: $violetInterestInGhost to 3)
She's not talking to Astarion now. She's talking to you.
$violet Are you haunting Stari? Did he kill you?
(if: $player_killed_by is "astarion")[$astarion ...](else:)[$astarion I did not.
$violet You're a liar, I don't trust you. Did he kill you?]
<span id="violetNo" class="energy-link" data-content="Speak to Violet: No./Speech/2/+1"></span>
<span id="violetNotGhost" class="energy-link" data-content="Speak to Violet: Not a ghost./Speech/4/+1"></span>
|next>[Say nothing.]
](else:)[$violet I can't believe you're trying to escape again.
Violet address Astarion from across the room.
$violet He's going to be so <i>angry.</i>
(if: $timeReached < $time)[//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>(set: $violetCausedAttention to true)
]Astarion's hand slips. He recenters his tool.
$violet I don't even know what he's going to do to you.
$violet He's going to forget all about me.
|wait>[Wait.]
]](elseif: $time is 5 and $sequence is 1)[(if: $just_said is "violetNo")[$violet Huh. Well, I bet <i>someone</i> killed you.
$violet You probably want vengeance, right? For your death. That's a ghost thing.
$violet Let me out and I'll hurt someone for you. Whoever you want.
$violet I'm good at hurting people.
](elseif: $just_said is "violetNotGhost")[Violet makes skeptical noise. She turns to Astarion.
$violet Is it one of those ghosts that won't admit it's dead?
$astarion Something like that.
$violet Well, I bet <i>someone</i> killed you. And you probably want vengeance, right? For your death. That's a ghost thing.
$violet Let me out and I'll hurt someone for you. Whoever you want.
$violet I'm good at hurting people.
](else:)[Violet waits a few second for a reply, then becomes impatient.
$violet Well, I bet <i>someone</i> killed you.
$violet And you probably want vengeance, right? For your death. That's a ghost thing.
$violet Let me out and I'll hurt someone for you. Whoever you want.
$violet I'm good at hurting people.
]
|wait>[Continue]{
(set: $violetOfferHurt to true)
}](elseif: $time is 6)[(display: "Violet Default"){
}](elseif: $time is 7)[Astarion pauses in his work. Something seems to occur to him. He glances at Violet.
$astarion Violet.
Violet brightens at the attention.
$violet Hm?
$astarion Can you think of a place in the palace that feels like freedom?
$violet That's a weird question.
$astarion Then you should be able to answer it. Since you're a weird and freakish gremlin person.
Violet hisses at him. But then she stops talking and clearly gives the question actual thought. She looks around the kennel. At the chains, and the blades, and the blood-soiled bedding.
$violet It would need to be somewhere very far away from here.
(if: $timeReached < $time)[//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script>(set: $escape_display to true)(set: $violetAnsweredQuestion to true)
]Astarion nods slowly. As if that were a useful thing to hear.
|wait>[Wait.]{
}](elseif: $time is 8)[(if: $astarion_inventory contains 'toolkit')[(set: $sequence to 0)(set: $escapingKennel to "astarion picked lock")(goto: "Escaping Kennel")
](else:)[It's taking Astarion a while to pick this lock with the substandard tools he scavenged. That's clearly making him tense.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
(display: "Violet Default")
]{
}](elseif: $time is 9 and $sequence is 0)[(if: $violetFree is true)[$violet I could do this faster.
$astarion How nice for you.
The venom in Astarion's tone is enough to kill a small dog.
$violet You're using the wrong kind of prong here.
$astarion Would you like to do this? Oh wait, you can't.
Astarion reaches over to poke Violet's injured hand with the mentioned prong. She hisses in pain and snatches it away.
|wait>[Wait.]
](elseif: $violetHasFlower is true)[Violet is admiring her flower.
$violet My flower is pretty and blue.
$astarion Nm.
$violet Do you have a flower?
$astarion I have something I'm trying to concentrate on doing.
$violet That's a no. I have more flowers than you.
$astarion Nm.
$violet I'm winning at flowers
(if: $sight >= 3)[<span class="softEmph">`[Unlocked: Sight 3]`</span> Astarion looks irritated about this, and also irritated at himself for being irritated about this.](else:)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//]
|wait>[Wait.]
](elseif: $violetInterestInGhost > 1)[(display: "Violet Default")
](else:)[$violet I wonder what he's going to do to you?
She sounds genuinely curious.
$violet I think he'll have to come up with, like, new ways of breaking people.
$violet Or maybe he'll lock you up again? Put you in a box this time. A coffin.
(if: $timeReached < $time)[//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>(set: $violetEscalating to "true")
]Astarion has to stop work on the lock because his hands have started shaking badly. Violet watches him, clearly interested in the effect she's having.
<span id="astarionIgnore" class="energy-link" data-content="Speak to Astarion: Ignore./Speech/2/+1"></span>
<span id="astarionHandCalm" class="energy-link" data-content="Touch Astarion`s hand./Touch/1/+1"></span>
|wait>[Wait.]]
](elseif: $time is 9 and $sequence is 1)[(if: $just_said is "astarionIgnore" and $astarion_trust > 8)[The word distracts Astarion for a precious moment. Takes him out of the conversation, and away from his thoughts about it.(set: $violetEscalating to "ignored")
$astarion Right.
$violet Bury you in stone.
Astarion pointedly ignores her. Focusing on the door.
Violet makes an irritated noise, like someone whose schemes have been frustrated, and lapses into silence.
](elseif: $just_said is "astarionHandCalm" and $astarion_trust > 8)[The touch distracts Astarion for a precious moment. Takes him out of the conversation, and away from his thoughts about it.(set: $violetEscalating to "ignored")
$astarion Right.
$violet Bury you in stone.
Astarion pointedly ignores her. Focusing on the door.
Violet makes an irritated noise, like someone whose schemes have been frustrated, and lapses into silence.
](else:)[Astarion makes a strained, irritated noise in your direction, but remains focused on Violet.
You don't have the sort of relationship where you can deescalate something like this.
]
|wait>[Continue]{
}](elseif: $time is 10)[(if: $violetFree is true)[(display: "Violet Default")
](elseif: $violetEscalating is "true")[$violet Bury you in stone.
$astarion Shut up, Violet.
$violet You going to make me?
$astarion I am in a position where I could cut your tongue out.
$violet Try it. Try it and I'll bite your fingers off.
$astarion You filthy, brutish little half-breed. I see why your mother sold you to him.
There is a space of silence. You get the feeling a number of lines were just crossed.
|wait>[Wait.]
](else:)[(display: "Violet Default")]{
}](elseif: $time is 11 and $sequence is 0)[(if: $violetFree is true)[$violet I fucking. Hate. Broken. Bones.
Violet is knocking her head against the wall, holding her right hand carefully so the movement doesn't jostle it.
$violet They take soooo long to heal.
$violet Like <i>days.</i>
$astarion Poor little flower.
Astarion says with palpable disinterest. He focuses on picking the lock.
|wait>[Wait.]
](elseif: $violetEscalating is "true")[Violet starts screaming.
$violet MASTER. MASTER, ASTARION'S OUT.
(if: $timeReached < $time)[//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Her voice is shockingly loud in the quiet space. Astarion darts across the room.
$violet HE'S TRYING TO ESCAPE AGAIN. HE'S IN THE...
(if: $timeReached < $time)[//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Astarion's knife flashes across her throat. As it does, Violet snaps forward and catches Astarion's hand between her teeth.
(if: $timeReached < $time)[(set: $health_change to -6)(display: "update health")(set: $violetSilenced to true)
]
|next>[Too fast to interfere.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
(set: $draw_attention_blocked to "blocked")
}](else:)[(display: "Violet Default")
]](elseif: $time is 11 and $sequence is 1)[Astarion wrenches his hand out from Violet's mouth. He retreats back to the door.
They glare at each other from across the room. Violet is bleeding only very slightly from |exp1>[the slash across her throat.](click: ?exp1)[ Astarion isn't bleeding at all from |exp2>[the bitemark in his hand.] (click: ?exp2)[ Two starving vampires with no blood to spare for frivolous things like wounds.]]
Violet tries to speak. It comes out as a fluttering, choking noise. Astarion grins viciously at her.
$astarion Much better.
He goes back to picking the lock.
|wait>[Wait.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
}](elseif: $time is 12)[(if: $violetSilenced is true)[Violet is glaring at Astarion as he works on the lock. He's almost finished.
|wait>[Wait.]
](else:)[Violet is watching Astarion work on the lock.
He's almost finished.
|wait>[Wait.]
]{
(set: $draw_attention_blocked to "empty")
}](elseif: $time is 13)[(set: $sequence to 0)(set: $escapingKennel to "astarion picked lock")(goto: "Escaping Kennel")
](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(if: $timeReached < $time and $violetInterestInGhost > 1)[(set: $violetInterestInGhost to it-1)]
(set: $timeReached to $time)
}<span style="font-style: italic;">(if: $time is 1)[Astarion is searching the room and talking to Violet.(if: $timeReached < $time and not ($astarion_inventory contains 'knife'))[
<span class='inv'>Astarion gained a rusty dagger.</span>(set: $astarion_inventory to it + (a: 'rusty dagger'))(set: $objects_taken to it + (a: 'rusty dagger')) ]{
}](elseif: $time is 2)[Astarion is searching the room and talking to Violet.{
}](elseif: $time is 3)[Astarion is searching the room and talking to Violet.(if: $timeReached < $time and not ($astarion_inventory contains 'toolkit'))[
<span class='inv'>Astarion gained improvised lockpicks.</span>(set: $astarion_inventory to it + (a: 'improvised lockpicks'))(set: $objects_taken to it + (a: 'improvised lockpicks'))]{
}](elseif: $time is 4)[(if: $violetInterestInGhost > 1)[Astarion is picking a lock. Violet is looking around for signs of you.](else:)[Astarion is picking a lock. Violet is watching him.]{
}](elseif: $time is 5)[(if: $violetFree is true)[Astarion is picking a lock. Violet is watching him.{
}](elseif: $violetInterestInGhost > 1)[Astarion is working on the lock. Violet is trying to talk to you.{
}](elseif: $violetHasFlower is true)[Astarion is working on the lock. Violet is admiring her flower.{
}](else:)[<span class="explainBelow">Click WATCH to see what happened.</span>Astarion is picking a lock. Violet says something upsetting.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>(set: $violetCausedAttention to true)]{
}]{
}](elseif: $time is 6)[(if: $violetInterestInGhost > 1)[Astarion is picking a lock. Violet is looking around for signs of you.](else:)[Astarion is picking a lock. Violet is watching him.]{
}](elseif: $time is 7)[<span class="explainBelow">Click WATCH to see what happened.</span>Astarion is asking Violet a question. Her answer is useful.(if: $timeReached < $time)[
//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script>(set: $escape_display to true)(set: $violetAnsweredQuestion to true)]{
}](elseif: $time is 8)[(if: $astarion_inventory contains 'toolkit')[(set: $sequence to 0)(set: $escapingKennel to "astarion picked lock")(goto: "Escaping Kennel"){
}](else:)[Astarion is picking a lock. It's taking a while and that's making him tense.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]]{
}](elseif: $time is 9)[(if: $violetFree is true)[Astarion is picking a lock. Violet is talking to him.{
}](elseif: $violetHasFlower is true)[Astarion is picking a lock. Violet is admiring her flower.{
}](elseif: $violetInterestInGhost > 1)[Astarion is picking a lock. Violet is looking around for signs of you.{
}](else:)[<span class="explainBelow">Click WATCH to see what happened.</span>Astarion is picking a lock. Violet says something upsetting.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>(set: $violetEscalating to "true")]{
}]{
}](elseif: $time is 10)[(if: $violetEscalating is "true")[Astarion and Violet are saying cruel things to each other.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]{
}](else:)[(if: $violetInterestInGhost > 1)[Astarion is picking a lock. Violet is looking around for signs of you.](else:)[Astarion is picking a lock. Violet is watching him.]{
}]{
}](elseif: $time is 11)[(if: $violetFree is true)[Astarion is picking a lock. Violet is complaining.{
}](elseif: $violetEscalating is "true")[Violet is screaming. Astarion is taking measures to silence her.(if: $timeReached < $time)[
//<span class="attention">His Attention +4</span>//<script>updateAttention(4);</script>
(set: $health_change to -6)(display: "update health")(set: $violetSilenced to true)(set: $draw_attention_blocked to "blocked")]{
}](else:)[(if: $violetInterestInGhost > 1)[Astarion is picking a lock. Violet is looking around for signs of you.](else:)[Astarion is picking a lock. Violet is watching him.]{
}]{
}](elseif: $time is 12)[Astarion is picking a lock. Violet is watching him.{
(set: $draw_attention_blocked to "empty")
}](elseif: $time is 13)[(set: $sequence to 0)(set: $escapingKennel to "astarion picked lock")(goto: "Escaping Kennel"){
}](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(if: $timeReached < $time and $violetInterestInGhost > 1)[(set: $violetInterestInGhost to it-1)]
(set: $timeReached to $time)
}</span>(if: $sequence is 0)[$violet Are you asking who I am?
$violet I'm Violet.
She squints at the air where your voice came from.
$violet I guess you're dead, so I can tell you stuff.
$violet I'm dead too. I'm a vampire spawn.
<span id="violetSpawn" class="energy-link" data-content="Speak to Violet: Spawn?/Speech/2/+1"></span>
|returnWatch>[Continue]
{
(set: $violetInterestInGhost to 3)
}](elseif: $sequence is 1)[$violet Being a vampire spawn is like being a vampire, only it's the worst.
$violet You have to do everything the master says.
$violet Like let a skeleton break every bone in your right hand.
Violet's voice, which had been maintaining a kind of brittle facsimile of cheer, breaks slightly over that.
|returnWatch>[Continue]{
(set: $violetInterestInGhost to 4)
}](elseif: $sequence is 2)[Violets lips draw back from her fangs.
$violet Of course I'm not fucking okay, you idiot thing.
She glares at her hands, as if blaming them.
$violet But I'm good at this. I'm good at pain.
$violet Not like Astarion. He's bad at it. He screams about anything.
$violet But bones...are hard.
She glares at her hands for a while more.
|next>[Continue]
](elseif: $sequence is 3)[Then she tosses her head and looks up towards you. Her face completely transforms. She smiles cheerful and charming. As if she were another person. In a completely different place.
$violet Only thirteen left, though!
She says brightly.
<span id="violetSorry" class="energy-link" data-content="Speak to Violet: I`m sorry/Speech/3/+1"></span>
|returnWatch>[Continue]{
(set: $violetInterestInGhost to 3)
}](elseif: $sequence is 4)[$violet Fuck off.
Violet's snarling again.
$violet I'm <i>good</i> at pain.
|returnWatch>[Continue]{
(set: $violetInterestInGhost to 4)
}](elseif: $sequence is 5)[$violet Are you begging? Are you a sad ghost?
She coos.
$violet Oh no. Poor dead thing.
$violet Die in a fire. No one here gets helped.
<span id="violetYou" class="energy-link" data-content="Speak to Violet: You./Speech/2/+1"></span>
|returnWatch>[Continue]{
(set: $violetInterestInGhost to 3)
}](elseif: $sequence is 6)[$violet Help...you. You mean, help me?
$violet Oh.
$violet Huh.
|next>[Continue]
](elseif: $sequence is 7)[$violet Oh, are you some kind of idiot person who still feels sorry for people?
$violet That's cute. You're lucky you're already dead, or you'd die.
$violet Sure. You could get me out. Usually that would be stupid, but when the master sees what Stari is doing, he's not going to think about anyone else for, like, a decade.
There's a clattering noise from across the room. Astarion dropped something. He kneels to pick it up. Violet ignores that. She's very focused on you now.
$violet If you get me out, I'll hurt someone for you. Whoever you want. I'm good at hurting people.(set: $violetOfferHurt to true)
<span id="violetHow" class="energy-link" data-content="Speak to Violet: How free?/Speech/3/+1"></span>
|returnWatch>[Continue]
(set: $violetInterestInGhost to 4)
](elseif: $sequence is 8)[$violet How do you get me out?
$violet You could bully Stari into doing it.
$violet He can manage locks. He's not as good as me, but his hand's not broken.
$violet Or the keys are probably somewhere around here. I bet Godey keeps them somewhere disgusting.
|returnWatch>[Continue]
](elseif: $sequence is 9)[$violet No. Fuck you.
|returnWatch>[Continue]
](elseif: $sequence is 10)[$violet Oh. You said please. That changes everything.
$violet <i>Please</i> go fuck yourself.
|returnWatch>[Continue]
](elseif: $sequence is 11)[$astarion What about her?
Astarion mutters distractedly.
<span id="astarionVioletInsane" class="energy-link" data-content="Speak to Violet: Is she insane?/Speech/4/+1"></span>
<span id="astarionVioletHelp" class="energy-link" data-content="Speak to Violet: Help?/Speech/2/13"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 12)[Astarion snorts.
$astarion Probably.
$astarion But we all have cause.
<span id="astarionVioletHelp" class="energy-link" data-content="Speak to Violet: Help?/Speech/2/13"></span>
|returnWatch>[Continue]
](elseif: $sequence is 13)[$astarion No. She's a menace.
$astarion It's safer for everyone when she's chained to something.
<span id="astarionTortured" class="energy-link" data-content="Speak to Astarion: She`s being tortured./Speech/4/14"></span>
(if: $violetOfferHurt is true)[<span id="astarionHelpUs" class="energy-link" data-content="Speak to Astarion: She`ll help us./Speech/4/15"></span>
]<span id="astarionPlease" class="energy-link" data-content="Speak to Astarion: Please./Speech/2/16"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 14)[$astarion Everyone's being tortured.(set: $astarionPersuaded to it+1)
Astarion snaps.
$astarion It doesn't make her special.
(if: $violetOfferHurt is true)[<span id="astarionHelpUs" class="energy-link" data-content="Speak to Astarion: She`ll help us./Speech/4/15"></span>
]<span id="astarionPlease" class="energy-link" data-content="Speak to Astarion: Please./Speech/4/16"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 15)[$astarion Did she say that?(set: $astarionPersuaded to it+3)
Astarion pauses.
$astarion That would be useful. She <i>is</i> very good at hurting people.
$astarion And we may need to hurt people...
He still seems hesitant.
<span id="astarionPlease" class="energy-link" data-content="Speak to Astarion: Please./Speech/2/16"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 16)[(if: $astarionPersuaded >= 3)[(set: $sequence to 19)(goto: $currentPassage)
](elseif: $astarion_trust > 9)[$astarion I told you no.
He sounds just a touch uncertain. You think you'll be able to wear him down.
<span id="astarionPlease2" class="energy-link" data-content="Speak to Astarion: Please./Speech/2/+1"></span>
|returnWatch>[Leave it be.]
](else:)[$astarion I told you no.
He sounds very certain. You don't think you'll be able to persuade him.
|returnWatch>[Continue]
]](elseif: $sequence is 17)[$astarion I don't have time for this nonsense.
$astarion Do you have any idea what he'll do to me if he finds me?
<span id="astarionPlease3" class="energy-link" data-content="Speak to Astarion: Please./Speech/2/+1"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 18)[$astarion She's not even a <i>person.</i>
$astarion She's some sort of dream thing.
He's almost whining and trying very hard to focus on the lockpicking.(set: $astarion_irritated to true)
<span id="astarionPlease3" class="energy-link" data-content="Speak to Astarion: Please./Speech/2/+1"></span>
|returnWatch>[Leave it be.]
](elseif: $sequence is 19)[(if: $astarion_irritated is true)[$astarion <I>Fine.</i>
He throws the tool he was using the the ground in a fit of pique.
Then he immediately picks it back up, and his other tools, and moves over to Violet.
](else:)[$astarion Fine.
He sighs and then moves over to Violet.
]
|next>[Continue]
](elseif: $sequence is 20)[(if: $violetOfferHurt is true)[Astarion starts working on opening Violet's manacles. She looks at him smugly.
$violet The ghost told you to do this.
Astarion grunts.
$violet I like the ghost.
(if: $astarion_trust > 15)[$astarion Everyone likes the ghost. You're not special.](else:)[$astarion Bully for you.]
$violet I wish the ghost was my brother instead of you.
$astarion Well I wish you would fall into a pool of acid and melt, so we don't all get what we wish for, hmm?
$violet The ghost wouldn't say those kinds of things to me.
$astarion That is because the ghost is practically monosyllabic.
](else:)[Astarion starts working on opening Violet's manacles. She looks at him curiously.
$violet What are you doing?
$astarion What does it <i>look</i> like I'm doing?
$violet Letting me out?
$astarion Brilliant. Well spotted.
$violet Why? You hate me.
$astarion I promise that hasn't changed.
]|next>[Continue]
](elseif: $sequence is 21)[It takes a little while to get Violet free.(set: $violetFree to true)
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>
When she is, Astarion immediately goes back to the door.(if: $violetOfferHurt is true)[ Violet takes a moment to address the air.
$violet When you want me to hurt someone, just say my name. Okay? Okay.]
Violet walks over to watch Astarion pick the lock on the door.
|returnWatch>[Continue]
](elseif: $sequence is 22)[
](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[
]{
(click: ?returnWatch)[(set: $sequence to 0)(set: $time to it+1)(go-to: "Kennel Watch")]
(set: $astarion_act3_talked to it+$just_said)
}(if: $violetAnsweredQuestion is not true)[(if: $escapingKennel is "astarion picked lock")[There's a click from the lock and soft noise of satisfaction from Astarion.](elseif: $escapingKennel is "player unlocked door")[You interject yourself into the lockpicking process. Astarion is confused for a moment. Then he sees you have the key. He steps aside to let you unlock the door.](else:)[Astarion turns back to the door and unlocks it using the largest key on the ring.]
He pushes the door open. He hesitates before leaving. Something seems to occur to him. He looks back at Violet.
$astarion Violet.
$violet Hm?
$astarion Can you think of a place in the palace that feels like freedom?
$violet That's a weird question.
$astarion Then you should be able to answer it. Since you're a weird and freakish gremlin person.
Violet hisses at him. But then she stops talking and clearly gives the question actual thought. She looks around the kennel. At the chains, and the blades, and the blood-soiled bedding.
$violet It would need to be somewhere very far away from here.
//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script>(set: $escape_display to true)(set: $violetAnsweredQuestion to true)
Astarion nods slowly. As if that were a useful thing to hear.
Then he walks quickly into the hall, not looking back.(if: $violetFree is true)[<script>addAchieve("Free As A Flower");</script>
Violet leaves as well. You lose sight of her as |exp1>[she melts into the shadows.](if: $violetOfferHurt is true)[ (click: ?exp1)[//But you suspect she's still around and listening for her cue.//](set: $violetWillStab to true)]]
|next>[You feel yourself pulled after Astarion.]{
}](elseif: $sequence is 0)[(if: $escapingKennel is "astarion picked lock")[There's a click from the lock and soft noise of satisfaction from Astarion.](elseif: $escapingKennel is "player unlocked door")[You interject yourself into the lockpicking process. Astarion is confused for a moment. Then he sees you have the key. He steps aside to let you unlock the door.](else:)[Astarion turns back to the door and unlocks it using the largest key on the ring.]
He pushes the door open. He walks quickly into the hall, not looking back.
(if: $violetFree is true)[Violet leaves as well. You lose sight of her as |exp1>[she melts into the shadows.]<script>addAchieve("Free As A Flower");</script>(if: $violetOfferHurt is true)[ (click: ?exp1)[//But you suspect she's still around and listening for her cue.//](set: $violetWillStab to true)]
](elseif: $violetSilenced)[Violet glares balefully and hisses something garbled as he leaves.
](else:)[$violet Bye Stari.
(if: $violetInterestInGhost > 0)[$violet Bye ghost.
(if: $violetHasFlower is true)[She moves the flower very slightly back and forth, as if waving.
]]]
|next>[You feel yourself pulled after Astarion.]{
}](elseif: $sequence is 1)[You are in a richly appointed hallway. Damask wallpaper. Wood paneled floor. Lined with red carpets. Lit by wall sconces.
It's nicer than the kennel, but also feels more exposed. Like someone might come around the corner at any moment.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
Astarion pauses at an intersection.
<span id="where" class="energy-link" data-content="Speak: Where?/Speech/2/+1"></span>
<span id="escape" class="energy-link" data-content="Speak: Escape./Speech/2/+1"></span>
|next>[Wait.]{
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 2)[(if: $just_said is "where")[$astarion That's what I'm trying to decide.
$astarion There are a few options.
](elseif: $just_said is "escape")[$astarion Yes. That's the goal. The question is how.
]$astarion We're chasing some sort of metaphor for freedom.
$astarion Violet was...Violet. But her answer was helpful.
$astarion 'Away' isn't much of a direction, but it is something.
$astarion Perhaps the others might have ideas.
<span id="where" class="energy-link" data-content="Speak: Others?/Speech/2/+1"></span>
|skip>[Wait.]{
}](elseif: $sequence is 3)[$astarion I have six siblings.(if: $astarionMentionedSiblings is true)[ I believe I mentioned.]
$astarion Three sisters. Violet, who you met. Aurelia, who is the eldest and so <i>very</i> obedient.
$astarion And Dalyria, who is fine.
$astarion Three brothers as well. Petras, who is insufferable. Leon, who is the youngest and very driven.
$astarion And Yousen, who is not generally worth mentioning.
|next>[Continue]
](elseif: $sequence is 4)[$astarion At this time of night, Petras will be going out hunting.
$astarion Dalyria will be with him, or in the dormitory.
$astarion Aurelia's either...well, if she's not attending the master she'll be harassing the chamberlain.
(if: $days_known_dream > 10)[$astarion And it's my dream. So they're probably where I expect them to be.
]He pauses again, deliberating.
<span id="petras" class="energy-link" data-content="Speak: Petras./Speech/2/+1"></span>
<span id="dalyria" class="energy-link" data-content="Speak: Dalyria./Speech/2/+1"></span>
<span id="aurelia" class="energy-link" data-content="Speak: Aurelia./Speech/2/+1"></span>
|next>[Let him decide.]{
(set: $just_said to "empty")
}](elseif: $sequence is 5)[(if: $just_said is "petras")[$astarion You know things are dire when we're asking <i>Petras</i> for advice.
$astarion We'll see if we catch him before he leaves to hunt.
](elseif: $just_said is "dalyria")[$astarion Dalyria is likely to be more helpful than most of the others put together.
$astarion And we're closest to the dormitory anyway.
](elseif: $just_said is "aurelia")[$astarion Aurelia does tend to know things.
Astarion says with a palpable reluctance.
$astarion Let's check the chamberlain's office.
](else:)[$astarion Dalyria is likely to be more helpful than most of the others put together.(set: $just_said to "dalyria")
Astarion decides.
$astarion And we're closest to the dormitory anyway.
]He starts moving.
|nextArea>[You feel yourself pulled after him.]{
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?nextArea)[
(set: $sequence to 1)
(if: $just_said is "petras")[(go-to: "Foyer")
](elseif: $just_said is "dalyria")[(go-to: "Dormitory")
](elseif: $just_said is "aurelia")[(go-to: "Chamberlain Office")
]
(go-to: "Spawn Dormitory")]
}(if: $violetInterestInGhost > 1 and $violetFree is not true)[Astarion is working on the lock. Violet is watching him, but also looking around for signs of you.](else:)[Violet is watching Astarion work on the lock.]
(if: $violetFree is false and $violetEscalating is "empty")[(if: $violetCausedAttention is true and not ($astarion_act3_talked contains "violetQuiet"))[<span id="violetQuiet" class="energy-link" data-content="Speak to Violet: Be quiet./Speech/3/9/1/passage:Violet"></span>
](if: $violetCausedAttention is true and $astarion_act3_talked contains "violetQuiet" and not ($astarion_act3_talked contains "violetPleaseQuiet"))[<span id="violetPleaseQuiet" class="energy-link" data-content="Speak to Violet: Please be quiet./Speech/4/10/1/passage:Violet"></span>
](if: not ($astarion_act3_talked contains "violetWho"))[<span id="violetWho" class="energy-link" data-content="Speak to Violet: Who?/Speech/2/0/1/passage:Violet"></span>
](if: not ($astarion_act3_talked contains "violetOkay"))[<span id="violetOkay" class="energy-link" data-content="Speak to Violet: You okay?/Speech/3/2/1/passage:Violet"></span>
](if: not ($astarion_act3_talked contains "violetHelp"))[(if: $speech < 4)[<span id="violetHelp" class="energy-link" data-content="Speak to Violet: Help?/Speech/2/5/1/passage:Violet"></span>](else:)[<span id="violetHelp" class="energy-link" data-content="Speak to Violet: Get you free?/Speech/2/7/1/passage:Violet"></span>]
](if: not ($astarion_act3_talked contains "astarionHelpViolet"))[(if: $speech < 3)[<span id="astarionHelpViolet" class="energy-link" data-content="Speak to Astarion: Violet./Speech/2/11/1/passage:Violet"></span>](else:)[<span id="astarionHelpViolet" class="energy-link" data-content="Speak to Astarion: Help Violet./Speech/3/13/1/passage:Violet"></span>]
]]|wait>[Wait.](if: $escapingFoyer is "escaping")[(set: $sequence to 0)(goto: "Hallway Choice")
](elseif: $sequence is 0)[You are in a well appointed foyer, decorated with furniture and paintings.
(if: $time < 6)[The front door is closed.
Petras is here.
](else:)[The front door is open.
](display: "Foyer Update")
|furniture>[Examine the furniture.]
|paintings>[Examine the paintings.]
|door>[Examine the door.]
(if: $time < 6)[|petras>[Examine Petras.]
]|wait>[Wait.]
{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 1)[You are in a well appointed foyer, decorated with furniture and paintings.
The front door is closed.
A man is here, fixing his hair by touch. His name is Petras.
Astarion speaks to him.
//Click <span class="emph">Watch</span> to watch what Astarion does, and perhaps interfere.//
//Click <span class="emph">Explore</span> to do something on your own.//{
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
(set: $time to 1)
(set: $timeReached to 0)
(set: $currentArea to "Foyer")
(set: $frontDoorOpen to false)
(set: $petrasNoticedGhost to 0)
(set: $foundShimmerFoyer to false)
(set: $unvisitedLocations to it-(a:"foyer"))
(set: $escapingFoyer to "trapped")
}](elseif: $sequence is 2)[The furniture here is more expensive than it is tasteful.
You see:
<span id="mahogany_bench" class="energy-link" data-content="A mahogany bench./Touch/0/+1/0"></span>
(if: $objects_taken contains "mahogany bench" and not ($objects_taken contains "bat corpse"))[<span id="bat_corpse" class="energy-link" data-content="A bat corpse./Touch/0/+1/0"></span>
]<span id="padded_armchair" class="energy-link" data-content="A padded armchair./Touch/0/+1/0"></span>
<span id="vase" class="energy-link" data-content="A vase./Touch/0/+1/0"></span>
(if:$objects_taken contains "vase" and not ($objects_taken contains "wine bottle"))[<span id="wine_bottle" class="energy-link" data-content="A bottle of wine./Touch/0/+1/0"></span>
]<span id="dead_plant" class="energy-link" data-content="A vase with a dead plant./Touch/0/+1/0"></span>
(if: $foundShimmerFoyer is false and $sight >= 3)[ <span class="text-shimmer-long">Something gleams</span> near the armchair.
](display: "Foyer Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 3)[{
(set: $focus to $just_said)
}(if: $focus is "mahogany bench")[An elaborately carved and extremely uncomfortable looking seat.
](elseif: $focus is "bat corpse")[A small dead thing, broken and hopeless.
](elseif: $focus is "padded armchair")[A comfortable looking padded armchair.(if: $foundShimmerFoyer is false)[
Something <span class="text-shimmer-long">gleams beside it.</span>]
](elseif: $focus is "vase")[Delicate, antique, and not very attractive.
](elseif: $focus is "wine bottle")[A green bottle, half-full of amber liquid.
](elseif: $focus is "dead plant")[A dried and withered husk of life sitting inside of an expensive vase.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
](if: $focus is "bat corpse" or $focus is "wine bottle")[<span id="take" class="energy-link" data-content="Take this./Touch/0/+1"></span>](else:)[//This is too large to take.//]
(if: $focus is "mahogany bench" or $focus is "padded armchair" or $focus is "vase" or $focus is "dead plant")[(if: not ($objects_taken contains $focus))[<span id="search" class="energy-link" data-content="Search this./Touch/0/+1"></span>
]](if: $foundShimmerFoyer is false and $focus is "padded armchair")[|foyerGleam>[Examine the gleam.]
]|prev>[Something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "draw")[(if: $focus is "mahogany bench")[$astarion There's no time to //sit.//
](elseif: $focus is "bat corpse")[$astarion I'm not eating that.
$astarion It's been dead for a while.
](elseif: $focus is "padded armchair")[$astarion There's no time to //sit.//
](elseif: $focus is "vase")[$astarion Sometimes, I have dreams about walking through these halls.
$astarion With a mallet.
$astarion And shattering everything that can shatter.
](elseif: $focus is "wine bottle")[$astarion A fairly common coping mechanism in the household.
$astarion That's Amnian dessert wine. Dalyria would like that.
He takes it.
<span class='inv'>Astarion gained wine bottle.</span>(set: $objects_taken to it+(a: "wine bottle"))(set: $astarion_inventory to it+(a: "wine bottle"))
](elseif: $focus is "dead plant")[$astarion It's impossible to keep things alive in here.
$astarion I don't know why the servants try.
]|furniture>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "search")[(if: $focus is "mahogany bench")[Behind one of the legs of this uncomfortable bench, you find the corpse of a dead bat.
How exciting.
//Found dead bat.//
](elseif: $focus is "padded armchair")[You find nothing in the upholstery of the armchair.
](elseif: $focus is "vase")[There's a half drunk bottle of alcohol stashed at the bottom of this vase.
//Found wine bottle.//
](elseif: $focus is "dead plant")[Nothing here but dirt and withered leaves.
]|furniture>[Continue]{
(set: $objects_taken to it+(a: $focus))
}](elseif: $just_said is "take")[You take the $focus.(if: $focus is "bat corpse")[
Because you really needed to have that.]
<span class='inv'>$player_name gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $player_inventory to it+(a: $focus))
|furniture>[Continue]
]{
(set: $time to it+1)
}](elseif: $sequence is 5)[The <span class="text-shimmer-long">gleaming in the air</span> is bright, indistinct, and familiar.
It feels friendly.
|next>[Reach out.]
|furniture>[Back away.]{
}](elseif: $sequence is 6)[You touch the shimmering. It's warm. You you see a complex twinkling of violet light that moves, forming geometric shapes. You smell parchment and ink.
For a moment, you feel like someone else is present.
<span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)<script>playAudio("aa_tap2");</script>
|furniture>[The shimmering fades away.]{
(set: $foundShimmerFoyer to true)
<script>playAudio("aa_tap2");</script>
}](elseif: $sequence is 7)[The paintings have gilded frames and morbid subjects.
The titles are etched into the frames:
<span id="sororal_dance" class="energy-link" data-content="Sororal Dance/Touch/0/+1/0"></span>
<span id="elven_poet" class="energy-link" data-content="Portrait of an Elven Poet/Touch/0/+1/0"></span>
<span id="ibex_and_rose" class="energy-link" data-content="Tableau of Ibex and Rose/Touch/0/+1/0"></span>
<span id="butterfly_on_skull" class="energy-link" data-content="Butterfly on Skull/Touch/0/+1/0"></span>
<span id="sunrise" class="energy-link" data-content="Sunrise Over Chionthar/Touch/0/+1/0"></span>
(display: "Foyer Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 8)[{
(set: $focus to $just_said)
}(if: $focus is "sororal dance")[A sinister painting of two women dancing. One alive. One rotting.
](elseif: $focus is "elven poet")[A picture of a pallid elf holding a quill.
](elseif: $focus is "ibex and rose")[A still life of a skull and a flower.
](elseif: $focus is "butterfly on skull")[A still life of bones and insects.
](elseif: $focus is "sunrise")[Sometimes it's difficult, in a still image, to tell the difference between a sunset and a sunrise.
You are certain this is a sunrise.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
]|prev>[Something else.]{
}](elseif: $sequence is 9)[(if: $just_said is "draw")[(if: $focus is "sororal dance")[$astarion This just advertises //vampires live here.//
$astarion I'm amazed we haven't all been found and slaughtered by hunters.
](elseif: $focus is "elven poet")[$astarion I hate poetry.
$astarion And by extension, poets.
](elseif: $focus is "ibex and rose")[$astarion Gods, these are so tacky.
](elseif: $focus is "butterfly on skull")[$astarion I wonder how they got the butterfly to stay still long enough to paint this.
](elseif: $focus is "sunrise")[Astarion looks at he painting you indicate. He examines it for a long moment.
$astarion I've seen this. Or something like it. Recently.
$astarion Is it the river? Am I recognizing the river?
$astarion No, I'm not. Am I.
He laughs slightly. Disbelieving.
$astarion It's the sun.
$astarion I'm recognizing the sun.
//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script><script>addAchieve("Foyer Secret");</script>
]|paintings>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}]](elseif: $sequence is 10)[The front door is heavy mahogany and carved with decorative patterns. (if: $frontDoorOpen is true)[
It is open. Astarion is considering walking through it. |goWatch>[You could interfere with that.]](else:)[
It is closed. You don't have a good history with being able to open doors by yourself.
Maybe someone will help you.]
|return>[Do something else.]{
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[Petras is a tall human with pale blonde hair.
He's wearing a fancy |exp1>[leather jacket] with a ruffled collar.(click: ?exp1)[
//It's slightly too small for him.//]
(display: "Foyer Update")
|gray>[Speak to Petras.](click: ?gray)[//Petras is focused on the visible person in the room. If you want to speak to him, you will have to <span class="emph">Watch</span> for chances to interject yourself into the conversation.//]
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 16)[
]{
(click: ?furniture)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?foyerGleam)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?paintings)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?door)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?petras)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?goWatch)[(set: $sequence to 0)(go-to: "Foyer Watch")]
(if: $frontDoorOpen is true)[<script>changeBackground("frontDoorOpen");</script>](else:)[<script>changeBackground("frontDoorClosed");</script>]
}(if: $escapingDormitory is "escaping")[(set: $sequence to 0)(goto: "Hallway Choice")
](elseif: $sequence is 0)[You are in a narrow dormitory, full of stacked beds.
There are wooden storage chests wedged between the beds. A wardrobe is pushed into the corner.
(if: $metVictoria is not true)[(if: $searchProgress > 0)[Soft singing is coming from somewhere.](else:)[A very soft sound is coming from somewhere.]
](display: "Dormitory Update")
|beds>[Examine the beds.]
|chests>[Examine the chests.]
|wardrobe>[Examine the wardrobe.]
|dalyria>[Examine Dalyria.]
(if: $metVictoria is not true)[(if: $searchProgress > 0)[|singing>[Investigate singing.]](else:)[|singing>[Investigate sound.]]
]|wait>[Wait.]
{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
<script>changeBackground("dormitory");</script>
}](elseif: $sequence is 1)[You are in a narrow dormitory, full of stacked beds.
There are wooden storage chests wedged between the beds. A wardrobe is pushed into the corner.
A woman is here, crouched on the floor by one of the beds. Her name is Dalyria.
Astarion speaks to her.
//Click <span class="emph">Watch</span> to watch what Astarion does, and perhaps interfere.//
//Click <span class="emph">Explore</span> to do something on your own.//{
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
(set: $time to 1)
(set: $timeReached to 0)
(set: $currentArea to "Dormitory")
(set: $unvisitedLocations to it-(a:"dormitory"))
(set: $foundShimmerDormitory to false)
(set: $tookFangDormitory to false)
(set: $dalyriaAgreement to "first bite")
(set: $victoriaSinging to "alfira")
(set: $searchProgress to 0)
(if: $sight >= 4)[(set: $searchProgress to 1)]
(set: $escapingDormitory to "trapped")
<script>changeBackground("dormitory");</script>
}](elseif: $sequence is 2)[There are three bunk beds, two mattresses to each. Six resting places in all.
<span id="violetBed" class="energy-link" data-content="Violet`s bed./Touch/0/+1/0"></span>
<span id="petrasBed" class="energy-link" data-content="Petras` bed./Touch/0/+1/0"></span>
<span id="dalyriaBed" class="energy-link" data-content="Dalyria`s bed./Touch/0/+1/0"></span>
<span id="aureliaBed" class="energy-link" data-content="Aurelia`s bed./Touch/0/+1/0"></span>
<span id="astarionBed" class="energy-link" data-content="Astarion`s bed./Touch/0/+1/0"></span>
<span id="yousenBed" class="energy-link" data-content="Yousen`s bed./Touch/0/+1/0"></span>
(if: $foundShimmerDormitory is false and $sight >= 3)[ <span class="text-shimmer-long">Something gleams</span> near Dalyria's bed.
](display: "Dormitory Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 3)[{
(set: $focus to $just_said)
}(if: $focus is "violetBed")[A worn mattress and thin blanket.
This bed has two pillows. It belongs to Violet.
](elseif: $focus is "petrasBed")[A worn mattress and thin blanket.
This bed belongs to Petras.
](elseif: $focus is "dalyriaBed")[A worn mattress and thin blanket.
This bed has two blankets. It belongs to Dalyria.(if: $foundShimmerDormitory is false)[
Something <span class="text-shimmer-long">gleams near the pillow.</span>]
](elseif: $focus is "aureliaBed")[A worn mattress and thin blanket.
This bed is neatly made. It belongs to Aurelia.
](elseif: $focus is "astarionBed")[A worn mattress.
This bed has not been slept in for a long time. It has neither pillow nor blanket. It belongs to Astarion.
](elseif: $focus is "yousenBed")[A worn mattress and thin blanket.
The blanket has been folded once over so that it is shorter, but thicker. This bed belongs to Yousen.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
](if: not ($objects_taken contains $focus))[<span id="search" class="energy-link" data-content="Search this./Touch/0/+1/1"></span>
](if: $foundShimmerDormitory is false and $focus is "dalyriaBed")[|dormitoryGleam>[Examine the gleam.]
]|prev>[Something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "draw")[(if: $focus is "astarionBed")[Astarion pauses to examine the bare mattress. His expression is tired.
$astarion Gods, it's going to take forever to earn everything back.
He goes back to what he was doing.
](elseif: $focus is "violetBed")[Astarion frowns at the second pillow.
$astarion Little thief.
](elseif: $focus is "dalyriaBed")[Astarion frowns at the second blanket, but then sighs and shrugs.
$astarion I suppose I wasn't using it.
](elseif: $focus is "yousenBed")[$astarion Be careful touching anything there.
](else:)[$astarion Are you suggesting I rest?
$astarion There's //really// no time for that.
]|beds>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "search")[(if: $focus is "violetBed")[Under the pillows of this bed, you find a diary.
It's open, so you can read the first page:
//The garlic in Yousen's bed gave him a nasty rash - serves him right for being such a whining runt. Now, if only I could get at that snob Leon and his brat of a daughter, but she's protected. Cazador must have a fine plan for little Victoria, I wonder what it is?//
](elseif: $focus is "yousenBed")[While examining the bed, you discover a slender bit of twine hung with metal scraps. If you were tangible, you would have knocked into it and made a jangling noise.
You also discover nails and shards of glass have been wedged into the side of the bed frame, pointing out such that if you tried to climb into the bed in the wrong way they would cut you.
It's a very paranoid bed.
](elseif: $focus is "dalyriaBed")[A mostly empty bottle of wine is wedged between the side of the bed and the wall.
](elseif: $focus is "aureliaBed")[There is a small wooden shelf by the end of this bed. It is covered in carefully organized paperwork.
This is the topmost document:
//Favored spawn, Cazador's best prey hunters who are entitled to stay in the Special Bedchamber, year to date:
- Leon
- Leon
- Violet
- Leon
- Leon
- Leon//
](elseif: $focus is "petrasBed")[A small note is tacked to the wall near the pillow of this bed.
//When you are on the hunt, take prey by preference from the city's lower classes. Patriars may smell better, but it will attract unwanted attention if too many aristocrats vanish while out slumming. In the last month you already brought a Dlusker, a Jhasso, and an Oathoon, and now three wealthy families are up in arms. Watch it.
- Chamberlain Dufay//
](elseif: $focus is "astarionBed")[This bed has been stripped of everything interesting or useful.
](else:)[You search the bed, but find nothing of interest.
]|beds>[Continue]{
(set: $objects_taken to it+(a: $focus))
}]{
(set: $time to it+1)
}](elseif: $sequence is 5)[The <span class="text-shimmer-long">gleaming in the air</span> is bright, indistinct, and familiar.
It feels friendly.
|next>[Reach out.]
|beds>[Back away.]{
}](elseif: $sequence is 6)[You touch the shimmering. It's warm. You hear a voice, harsh and certain, cursing in a language you don't understand. You hear the scrape of a grindstone working a weapon to sharpness.
For a moment, you feel like someone else is present.
<span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)<script>playAudio("aa_tap2");</script>
|beds>[The shimmering fades away.]{
(set: $foundShimmerDormitory to true)
<script>playAudio("aa_tap2");</script>
}](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[Inside the scuffed, wooden wardrobe you find:(set: $nothingLeft to true)
(if: not ($objects_taken contains "delicate jacket"))[<span id="delicate_jacket" class="energy-link" data-content="A delicate jacket./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "backless gown"))[<span id="backless_gown" class="energy-link" data-content="A backless gown/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "padded doublet"))[<span id="padded_doublet" class="energy-link" data-content="A padded doublet./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "diamond doublet"))[<span id="diamond_doublet" class="energy-link" data-content="A diamond patterned doublet./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "tattered blouse"))[<span id="tattered_blouse" class="energy-link" data-content="A tattered blouse./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "tasteful boots"))[<span id="tasteful_boots" class="energy-link" data-content="Some tasteful boots./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: $nothingLeft is true)[//Nothing.//
](display: "Dormitory Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 11)[{
(set: $focus to $just_said)
}(if: $focus is "delicate jacket")[Stylish but damaged. The seams of this garment seem on the verge of giving way.
](elseif: $focus is "backless gown")[A dress designed to reveal and suggest. Impractical for day-to-day wear.
](elseif: $focus is "padded doublet")[A doublet with enough padding to double as armor. It's dusty as if from recent travel.
](elseif: $focus is "diamond doublet")[A sleek, flattering doublet whose pretty, diamond-shaped embroidery is starting to unravel. Many diamonds have become triangles.
](elseif: $focus is "tattered blouse")[A much repaired pale white blouse.
](elseif: $focus is "tasteful boots")[Made of tough, well-worn leather, these boots are nearing the end of their life. One sole has curled entirely away from the base of the shoe.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
]<span id="take" class="energy-link" data-content="Take this./Touch/0/+1"></span>
|prev>[Something else.]{
}](elseif: $sequence is 12)[(if: $just_said is "draw")[(if: $focus is "backless gown")[$astarion Cheeky.
$astarion Yes, I would look very good in that. But I am not playing dress up for you.
](elseif: $focus is "padded doublet")[$astarion That's shockingly intact for something in the shared wardrobe.
He feels the fabric.
$astarion And this is almost proper armor. That could be very useful.
He pulls it out and puts it on over his tattered white shirt.
<span class='inv'>Astarion gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $astarion_inventory to it+(a: $focus))
He spends another moment examining the gold embroidery around the collar. He looks like he's trying to remember something he can't quite place.
//<span class="escape">Escape +2</span>//<script>updateEscape(2);</script><script>addAchieve("Dormitory Secret");</script>
](else:)[$astarion That's on the verge of rubbish.
$astarion And even if I had time to mend it, I don't need it.
]|wardrobe>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "take")[You take the $focus.
<span class='inv'>$player_name gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $player_inventory to it+(a: $focus))
|wardrobe>[Continue]
]{
(set: $time to it+1)
}](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[The chests are closed.
(if: not ($objects_taken contains "music box"))[<span id="feel" class="energy-link" data-content="Feel inside./Touch/2/+1/1"></span>
]|return>[Do something else.]
](elseif: $sequence is 16)[You pass your hands through the lids and try to feel around inside of the chests.
They are very tightly packed, as if multiple people are competing to fit their entire lives into them.
This makes it very hard to make out individual objects, but you find something strangely shaped enough that you can distinguish it by touch as separate.
<span id="take" class="energy-link" data-content="Take the thing./Touch/5/+1/1"></span>
|return>[Do something else.]
](elseif: $sequence is 17)[You pull out a small, mechanical music box.
<span class='inv'>$player_name gained music box.</span>(set: $objects_taken to it+(a: "music box"))(set: $player_inventory to it+(a: "music box"))
|return>[Continue]{
}](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[(if: $searchProgress is 0)[A very soft sound is coming from somewhere.
It's so quiet, it's hard to tell from where.
(display: "Dormitory Update")
<span id="search" class="energy-link" data-content="Search for the source./Sight/0/+1/3"></span>
(if: not ($astarion_drew_attention contains "askAstarionSound"))[<span id="askAstarionSound" class="energy-link" data-content="Speak to Astarion: Sound?/Speech/2/+1"></span>
](if: not ($astarion_drew_attention contains "askDalyriaSound"))[<span id="askDalyriaSound" class="energy-link" data-content="Speak to Dalyria: Sound?/Speech/2/+1"></span>
]|return>[Do something else.]
](elseif: $searchProgress is 1)[Someone is singing. Soft singing is coming from somewhere.
It's so quiet, it's hard to tell from where.
(display: "Dormitory Update")
<span id="search" class="energy-link" data-content="Search for the source./Sight/0/+1/4"></span>
(if: not ($astarion_drew_attention contains "askAstarionSinging"))[<span id="askAstarionSinging" class="energy-link" data-content="Speak to Astarion: Singing?/Speech/2/+1"></span>
](if: not ($astarion_drew_attention contains "askDalyriaSinging"))[<span id="askDalyriaSinging" class="energy-link" data-content="Speak to Dalyria: Singing?/Speech/2/+1"></span>
]<span id="singing" class="energy-link" data-content="Sing back./Speech/6/+1"></span>
(if: $class is "bard")[<span id="bardSinging" class="energy-link" data-content="[BARD] Sing a different song./Speech/6/+1"></span>
](if: $player_inventory contains 'music box')[<span id="musicBox" class="energy-link" data-content="Play the music box./Touch/1/+1"></span>](else:)[|gray4>[Play the music box.] (click: ?gray4)[//You don't have a music box.//]]
|return>[Do something else.]
](elseif: $searchProgress is 2)[Someone is singing and you've figured out where they are.
The sound is muffled and indistinct because it is coming through a wall. The wall behind the wardrobe. Someone in the room next to this one is singing.
(display: "Dormitory Update")
<span id="walk" class="energy-link" data-content="Walk through the wall./Touch/2/22/0"></span>
|return>[Do something else.]
]](elseif: $sequence is 21)[(if: $just_said is "askAstarionSound")[(if: $time < 5)[$astarion You're probably hearing the rat.](else:)[$astarion I have no idea what you mean.](set: $astarion_drew_attention to it+$just_said)
|prev>[Continue]
](elseif: $just_said is "askAstarionSinging")[$astarion Oh, I hear it now.(set: $astarion_drew_attention to it+$just_said)
$astarion I suppose that's Leon's brat. Tucked away in her pretty room.
He gestures to the far wall, and you realize the singing is coming from behind there. The next room over.
$astarion No one else has anything to sing about.(set: $searchProgress to it+1)
|prev>[Continue]
](elseif: $just_said is "askDalyriaSound")[$dal That's Leon's daughter.(set: $astarion_drew_attention to it+$just_said)
$dal She has nothing better to do than sing.
(if: $sight < 3)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> There is a startlingly bitter note to her voice.]
You realize the sound you're hearing is indeed singing.(set: $searchProgress to it+1)
|prev>[Continue]
](elseif: $just_said is "askDalyriaSinging")[$dal It would be less grating if she could stay on key.(set: $astarion_drew_attention to it+$just_said)
|prev>[Continue]
](elseif: $just_said is "musicBox")[You play the music box. Astarion and Dalyria glance at you for a moment.
The distant singing pauses, then starts again. Louder now. Emboldened.
And it sounds like she's singing a different song. Trying to match the music box.(set: $victoriaSinging to "river")
You can tell it's coming from the other side one of the walls. The next room over.(set: $searchProgress to it+1)
|prev>[Continue]
](elseif: $just_said is "bardSinging")[You sing back. Astarion and Dalyria glance at you for a moment.
The distant singing pauses, then starts again. Louder now. Emboldened.
And it sounds like she's singing a different song. Trying to match you.(set: $victoriaSinging to "river")
You can tell it's coming from the other side one of the walls. The next room over.(set: $searchProgress to it+1)
|prev>[Continue]
](elseif: $just_said is "singing")[You sing back, echoing the song you hear. Astarion and Dalyria glance at you for a moment.
The distant singing pauses, then starts again. Louder now. Emboldened.
You can tell it's coming from the other side one of the walls. The next room over.(set: $searchProgress to it+1)
|prev>[Continue]
](else:)[{
(set: $searchProgress to it+1)
(set: $sequence to 20)
(go-to: $currentPassage)
}]{
(set: $time to it+1)
}](elseif: $sequence is 22)[{
(set: $sequence to 0)
(go-to: "Favored Bedchamber")
}](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[Dalyria is an elf with rose-colored skin and white hair.
She has a gentle but formal demeanor(if: $time < 7)[, which she somehow maintains while kneeling on the ground looking for rats.](else:)[.]
(display: "Dormitory Update")
|gray>[Speak to Dalyria.](click: ?gray)[//Dalyria is focused on the visible person in the room. If you want to speak to her, you will have to <span class="emph">Watch</span> for chances to interject yourself into the conversation.//]
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 26)[
](elseif: $sequence is 27)[
](elseif: $sequence is 28)[
]{
(click: ?beds)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?dormitoryGleam)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?wardrobe)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?chests)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?singing)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?dalyria)[(set: $sequence to 25)(go-to: $currentPassage)]
(click: ?goWatch)[(set: $sequence to 0)(go-to: "Dormitory Watch")]
}(if: $escapingOffice is "escaping")[(set: $sequence to 0)(goto: "Hallway Choice")
](elseif: $sequence is 0)[You are in an office. It is decorated with paintings and bookshelves.
In the center of everything is a solid, wooden desk.
(if: $aureliaState is not "gone" and $aureliaState is not "gone kind")[Aurelia is here.
](display: "Office Update")
|desk>[Examine the desk.]
|books>[Examine the bookshelves.]
|paintings>[Examine the paintings.]
(if: $aureliaState is not "gone" and $aureliaState is not "gone kind")[|aurelia>[Examine Aurelia.]
]|waitOffice>[Wait.]
{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
<script>changeBackground("office");</script>
}](elseif: $sequence is 1)[You are in an office. It is decorated with paintings and bookshelves.
In the center of everything is a solid, wooden desk.
A woman is here, standing by the desk and sorting methodically through papers. Her name is Aurelia.
She speaks to Astarion.
//Click <span class="emph">Watch</span> to watch what Astarion does, and perhaps interfere.//
//Click <span class="emph">Explore</span> to do something on your own.//{
(set: $astarion_link_display to true)
(set: $tomb_link_display to true)
(set: $practice_link_display to false)
(set: $time to 1)
(set: $timeReached to 0)
(set: $currentArea to "Office")
(set: $unvisitedLocations to it-(a:"office"))
(set: $foundShimmerOffice to false)
(set: $tookFangOffice to false)
(set: $aureliaState to "working")
(set: $astarionReading to false)
(set: $triedTakeFromDesk to false)
(set: $inkKnockedOver to false)
(set: $escapingOffice to "trapped")
<script>changeBackground("office");</script>
}](elseif: $sequence is 2)[The paintings have gilded frames and morbid subjects.
The titles are etched into the frames:
<span id="condemnation" class="energy-link" data-content="Condemnation/Touch/0/+1/0"></span>
<span id="aspen_lamentation" class="energy-link" data-content="Aspen Lamentation/Touch/0/+1/0"></span>
<span id="elven_poet" class="energy-link" data-content="Portrait of an Elven Poet/Touch/0/+1/0"></span>
<span id="struck_match" class="energy-link" data-content="Struck Match/Touch/0/+1/0"></span>
(if: $foundShimmerOffice is false and $sight >= 3)[ <span class="text-shimmer-long">Something gleams</span> near the painting of trees.
](display: "Office Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 3)[{
(set: $focus to $just_said)
}(if: $focus is "condemnation")[A painting of a woman with a goat skull instead of a head presiding over a wall of writhing corpses.
](elseif: $focus is "aspen lamentation")[A desolate landscape of trees and broken sculpture.(if: $foundShimmerOffice is false)[
Something <span class="text-shimmer-long">gleams in the paint.</span>]
](elseif: $focus is "elven poet")[A picture of a pallid elven artist.
](elseif: $focus is "struck match")[A painting of two noblewomen, meeting by candlelight.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
](if: $foundShimmerOffice is false and $focus is "aspen lamentation")[|officeGleam>[Examine the gleam.]
]|prev>[Something else.]{
}](elseif: $sequence is 4)[(if: $just_said is "draw")[(if: $focus is "condemnation")[$astarion She looks like she's having fun.
](elseif: $focus is "aspen lamentation")[$astarion I don't hate this one.
$astarion I don't particularly like it, but I don't hate it.
](elseif: $focus is "elven poet")[$astarion I hate poetry.
$astarion And by extension, poets.
](elseif: $focus is "struck match")[$astarion I bet they're plotting to kill someone.
$astarion That looks like a murder sort of a meeting.
]|paintings>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}]{
(display: "Time Pass Office")
}](elseif: $sequence is 5)[The <span class="text-shimmer-long">gleaming in the air</span> is bright, indistinct, and familiar.
It feels friendly.
|next>[Reach out.]
|paintings>[Back away.]{
}](elseif: $sequence is 6)[You touch the shimmering. It's warm. You hear the rustle of leaves. See the glint of metal like sunlight on the edge of a sword. A voice saying that all will be well now. He will make it so.
For a moment, you feel like someone else is present.
<span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)<script>playAudio("aa_tap2");</script>
|paintings>[The shimmering fades away.]{
(set: $foundShimmerOffice to true)
<script>playAudio("aa_tap2");</script>
}](elseif: $sequence is 7)[The desk is large and wooden. On it you see:(set: $nothingLeft to true)
(if: not ($objects_taken contains "szarr palace ledger"))[<span id="szarr_palace_ledger" class="energy-link" data-content="The Szarr Palace Ledger./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "quill"))[<span id="quill" class="energy-link" data-content="A quill./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "inkpot"))[<span id="inkpot" class="energy-link" data-content="An inkpot./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "empty bottle"))[<span id="empty_bottle" class="energy-link" data-content="A bottle of wine./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "etiquette note"))[<span id="etiquette_note" class="energy-link" data-content="A note on servant etiquette./Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: $nothingLeft is true)[//Nothing.//
](display: "Office Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 8)[{
(set: $focus to $just_said)
}(if: $focus is "szarr palace ledger")[A collection of papers listing and tracking inventory of goods in regular use at the Szarr Palace. Categories include:
//food and drink for servants and 'guests'
a variety of alcohol
cleaning supplies, including an expensive bloodstain remover
candles of different sizes in yellow tallow and red and black wax
leather straps with buckles
balms and oils
local broadsheets and periodicals//
](elseif: $focus is "quill")[A long, sharpened feather plucked from the wing of a goose.
](elseif: $focus is "empty bottle")[A bottle of wine. On closer inspection it appears to be empty.
](elseif: $focus is "inkpot")[This container of crystal and polished brass is filled near to the brim with coal-black ink.
](elseif: $focus is "etiquette note")[This note reads:
//Memorize these rules and do not fail to follow them.
Do your jobs silently and to not speak unless spoken to. The master likes it quiet.
If you are not busy, find something to do and look busy. The master likes diligence.
If you encounter the master, stand still and cast your eyes down with deference. The master likes to be respected.
No whistling.- Chamberlain Dufay//
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
]<span id="take" class="energy-link" data-content="Take this./Touch/5/+1"></span>
(if: $triedTakeFromDesk is true and $aureliaState is "working")[<span id="push" class="energy-link" data-content="Knock this over./Touch/3/+1"></span>
]|prev>[Something else.]{
}](elseif: $sequence is 9)[(if: $just_said is "draw")[(if: $focus is "szarr palace ledger")[$astarion Gods, do we really spend that much on //cleaning// supplies?
$astarion The alcohol budget I at least can understand.
](elseif: $focus is "quill")[$astarion In this particular instance I think swords will serve us better.
](elseif: $focus is "empty bottle")[$astarion That's a rather large empty bottle.
$astarion Someone's coping.
](elseif: $focus is "inkpot")[$astarion Ink is valuable and that's a nice container. I could pawn that for ten gold.
$astarion Not worth the risk, though.
$astarion And also we're in a dream. And it would be dream gold. And that's a dream inkpot.
$astarion Gods, this is weird.
](elseif: $focus is "etiquette note")[$astarion I already know all of this.
$astarion And yes. Whistling is suicidal in this house.
]|desk>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "push")[(if: $focus is "szarr palace ledger")[You try to push a piece of paperwork on the desk, but Aurelia is focused on this and notices the movement immediately.
She holds the paper still and stops it from going anywhere.
](elseif: $focus is "quill")[You push the quill. It falls out of the inkpot.
Aurelia picks it up and puts it back in its place.
](elseif: $focus is "empty bottle")[You push the wine bottle and it totters over.
Aurelia makes a tight noise of alarm, but then sees that the bottle is empty and sighs in relief.
She rights it.
](elseif: $focus is "inkpot" and $inkKnockedOver is true)[You push the inkpot, tilting it to one side. But Aurelia is watching for this and ruthlessly stops you.
](elseif: $focus is "inkpot")[You push the inkpot, tilting it to one side. Aurelia makes a tight noise of alarm and moves quickly to stop it from tipping over. She almost succeeds, but a few droplets of black ink scatter on the desk.
Aurelia curses much more fervently than a small blot of ink would generally warrant. She produces a rag and a flask of liquid out of her pocket and starts very carefully cleaning up the spill.(set: $aureliaState to "cleaning ink new")(set: $inkKnockedOver to true)
](elseif: $focus is "etiquette note")[You push the note off the table.
Aurelia kneels down to pick it up and put it back on the table. It only takes her a moment.
](if: $focus is "inkpot" and $inkKnockedOver is not true)[|return>[Continue]](else:)[|desk>[Continue]]{
}](elseif: $just_said is "take")[(if: $aureliaState is "working" or $aureliaState is "being helped" or $aureliaState is "talking" or $aureliaState is "talking kind")[You try to take the $focus, but as soon as she sees it moving Aurelia picks it up and |exp1>[moves it away from you.](click: ?exp1)[ //She does this automatically, with the air of someone very used to people trying to grab at or interfere with what she's doing.//](if: $triedTakeFromDesk is not true)[
You don't think you'll be able to take anything from the desk while she's here, but you might be able to do something do something subtler. Knock something over.(set: $triedTakeFromDesk to true)]
|desk>[Continue](set: $just_said to $focus)
](elseif: $aureliaState is "gone" or $aureliaState is "gone kind")[You take the $focus.
<span class='inv'>$player_name gained $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $player_inventory to it+(a: $focus))
|desk>[Continue]
](else:)[Despite being distracted, Aurelia still manages to interfere with you taking the $focus.
She's extremely good at this. It's almost like she's been managing six younger siblings for centuries.
|desk>[Continue] (set: $just_said to $focus)]{
}]{
(display: "Time Pass Office")
(if: $aureliaState is "cleaning ink new")[(set: $aureliaState to "cleaning ink")]
}](elseif: $sequence is 10)[The bookshelf contains many books. The following titles catch your eye:(set: $nothingLeft to true)
(if: not ($objects_taken contains "magical histories"))[<span id="magical_histories" class="energy-link" data-content="Magical Histories/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "lower city upper city"))[<span id="lower_city_upper_city" class="energy-link" data-content="Lower City, Upper City/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "adventures of tenebrux morrow"))[<span id="adventures_of_tenebrux_morrow" class="energy-link" data-content="Adventures of Tenebrux Morrow/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "patriars of baldurs gate"))[<span id="patriars_of_baldurs_gate" class="energy-link" data-content="Patriars of Baldurs Gate/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: not ($objects_taken contains "the seven companions"))[<span id="the_seven_companions" class="energy-link" data-content="The Seven Companions/Touch/0/+1/0"></span>(set: $nothingLeft to false)
](if: $nothingLeft is true)[//Actually, there's nothing left of interest.//
](display: "Office Update")
|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 11)[{
(set: $focus to $just_said)
}(if: $focus is "queen of kingpins")[A detective's report that reads like a novel about the criminal Nine Fingers and her crew, the 'Guild'. The author seems to dislike his subject almost as much as he admires her.
](elseif: $focus is "magical histories")[Volume two of a series on the history of magic. A number of loose pieces of paper seem to have been stuffed into this book.
](elseif: $focus is "lower city upper city")[A guidebook to the city of Baldur's Gate that specifically outlines the differences between the affluent Upper City and the wild tangle of the Lower City.
](elseif: $focus is "adventures of tenebrux morrow")[The full title of this book is actually--'The True and Impossible Adventures of Tenebrux Morrow, Vol. 2'. It's a charming bit of escapist entertainment.
](elseif: $focus is "patriars of baldurs gate")[A scathing and informative takedown of the Baldurian upper crust.
](elseif: $focus is "the seven companions")[A story about an unlikely group of seven adventurers who band together to defeat a great threat to the Sword Coast.
](if: not ($astarion_drew_attention contains $focus))[<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1"></span>
]<span id="take" class="energy-link" data-content="Take this./Touch/5/+1"></span>
|prev>[Something else.]{
}](elseif: $sequence is 12)[(if: $just_said is "draw")[(if: $focus is "queen of kingpins")[$astarion I think Cazador has dealings with this woman.
$astarion I suppose the chamberlain is trying to keep abreast of the intrigue.
$astarion Not that it matters to (if: $astarion_trust > 9)[us](else:)[me].
](elseif: $focus is "magical histories")[$astarion It's amazing how the right author can make even magic seem dry.(if: not ($objects_taken contains "scroll of counterspell"))[
$astarion Wait. What's this?
Astarion rifles through the papers that have been tucked into this book. He finds a spell scroll.
<span class='inv'>Astarion gained scroll of counterspell.</span>(set: $objects_taken to it+(a: "scroll of counterspell"))(set: $astarion_inventory to it+(a: "scroll of counterspell"))]
](elseif: $focus is "lower city upper city")[$astarion I don't have time to read.
$astarion And I already know everything in that book.
$astarion I've been in this city for two hundred years.
](elseif: $focus is "adventures of tenebrux morrow")[$astarion I don't have time to read.
$astarion Tragically. That one looks good.
$astarion Actually, Dalyria might like that.
He takes it.
<span class='inv'>Astarion gained the book: adventures of tenebrux morrow.</span>(set: $objects_taken to it+(a: "adventures of tenebrux morrow"))(set: $astarion_inventory to it+(a: "adventures of tenebrux morrow"))
](elseif: $focus is "patriars of baldurs gate")[$astarion I don't have time to read.
$astarion But I'm sure all of that's quite accurate.
](elseif: $focus is "the seven companions")[$astarion I don't have time to...(set: $astarionReading to true)
$astarion Wait.
He pulls the book off the shelf. He starts paging through it.
$astarion These names are familiar.
<span class='inv'>Astarion gained the book: the seven companions.</span>(set: $objects_taken to it+(a: "the seven companions"))(set: $astarion_inventory to it+(a: "the seven companions"))<script>addAchieve("Office Secret");</script>
]|books>[Continue]{
(set: $astarion_drew_attention to it+$focus)
}](elseif: $just_said is "take")[You take the $focus.
<span class='inv'>$player_name gained the book: $focus.</span>(set: $objects_taken to it+(a: $focus))(set: $player_inventory to it+(a: $focus))(if: $focus is "magical histories" and not ($objects_taken contains "scroll of counterspell"))[
As you pick up the book, a few loose pieces of paper slip out. One of them is a Scroll of Counterspell. Useful for canceling magic.
<span id="take" class="energy-link" data-content="Take this too./Touch/5/+1/0"></span>
<span class="explain">You need at least 3 Speech to cast this spell.</span>
<span id="draw" class="energy-link" data-content="Draw attention to this./Draw/0/+1/0"></span>
|books>[Leave it.]
](else:)[
|books>[Continue]
]]{
(display: "Time Pass Office")
}](elseif: $sequence is 13)[(if: $just_said is "take")[You take the Scroll of Counterspell.
<span class='inv'>$player_name gained the a Scroll of Counterspell.</span>(set: $objects_taken to it+(a: 'scroll of counterspell'))(set: $player_inventory to it+(a: 'scroll of counterspell'))
|books>[Continue]
](else:)[$astarion What's this?
$astarion Oh. That may be //very// relevant.
<span class='inv'>Astarion gained scroll of counterspell.</span>(set: $objects_taken to it+(a: "scroll of counterspell"))(set: $astarion_inventory to it+(a: "scroll of counterspell"))
|books>[Continue]
]](elseif: $sequence is 14)[
](elseif: $sequence is 15)[Aurelia is a slight tiefling woman. She has crimson skin and curling black horns.
(if: $aureliaState is "cleaning ink")[She is bent over the table, concentrating very hard on cleaning off an blot of ink.
](elseif: $aureliaState is "cleaning paper")[She is kneeling beside the desk, concentrating very hard on reassembling the scattered papers of the ledger.
](elseif: $aureliaState is "working" or $aureliaState is "being helped")[She is |exp1>[standing beside a desk.](click: ?exp1)[ //There is a perfectly good chair next to the desk that she is for some reason not using.//]
She is going through records of household expenses. She occasionally crosses out numbers and enters new ones.
](if: $tookFangOffice is not true)[A huge fang is embedded in her body.
](display: "Office Update")
|gray>[Speak to Aurelia.](click: ?gray)[//Aurelia is focused on the visible person in the room. If you want to speak to her, you will have to <span class="emph">Watch</span> for chances to interject yourself into the conversation.//]
(if: $tookFangOffice is not true)[|next>[Examine the fang.]
|skip>[Take the fang.]
]|return>[Do something else.]{
(set: $astarion_link_display to true)
(set: $tomb_link_display to false)
(set: $practice_link_display to true)
}](elseif: $sequence is 16)[A huge fang has been stabbed into Aurelia's back.
It pierces her entire body and its sharp point curls out of her chest just under her collarbone.
She doesn't seem to notice it. Astarion hasn't commented on it.
|next>[Take the fang.]
|aurelia>[Something else.]
](elseif: $sequence is 17)[You try to pull the fang out from Aurelia's chest.
You can touch it without effort. It is like you, |exp1>[a shadow in this place.](click: ?exp1)[ //That's probably why she can't see it.//]
(if: $aureliaState is "cleaning ink" or $aureliaState is "cleaning paper")[It's buried deep, wedged between her ribs, but she's so distracted by frantic cleaning that she doesn't seem to notice as you grip it.
|next>[Continue]
](else:)[But it's buried deep, wedged between her ribs. As you try to pull the tooth free Aurelia shifts uncomfortably and you lose your grip.
Perhaps if she were distracted.
|aurelia>[Continue]
]{
}](elseif: $sequence is 18)[You pull the fang out of Aurelia's chest. She makes |exp2>[a vague, uncomfortable noise] as it comes free. (click: ?exp2)[ //A quiet sound disproportionate to the violence of the act.//]
(display: "Take Fang")(set: $tookFangOffice to true)
|aurelia>[Continue]
]{
(click: ?waitOffice)[
(display: "Time Pass Office")
(set: $sequence to 0)
(goto: $currentPassage)
]
(click: ?paintings)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?officeGleam)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?desk)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?books)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?aurelia)[(set: $sequence to 15)(go-to: $currentPassage)]
}<span style="font-style: italic;">(if: $time is 1)[Astarion is talking to Petras.{
}](elseif: $time is 2)[Astarion is talking to Petras.{
}](elseif: $time is 3)[Astarion is talking to Petras.{
}](elseif: $time is 4)[Astarion is talking to Petras.{
}](elseif: $time is 5)[Astarion is talking to Petras. Petras says something useful.(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]{
}](elseif: $time is 6)[Petras leaves, opening the door.(set: $frontDoorOpen to true){
}](elseif: $time is 7)[Astarion is considering the open door.{
}](elseif: $time is 8)[Astarion is making a decision.{
}](elseif: $time is 9)[{(set: $sequence to 0)(go-to: "Foyer Watch")
}](elseif: $time is 10)[
](elseif: $time is 11)[
](elseif: $time is 12)[
](elseif: $time is 13)[
](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(set: $timeReached to $time)
(if: $frontDoorOpen is true)[<script>changeBackground("frontDoorOpen");</script>](else:)[<script>changeBackground("frontDoorClosed");</script>]
}</span>{
(if: $sequence is 0)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
](else:)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
]
}(if: $time is 1 and $sequence is 0)[$petras Astarion! You're here?
$astarion Perceptive as ever, Petras.
$petras But aren't you...what are you doing here?
$astarion Obviously the master let me out.
$astarion How else could I be here?
$petras Right. Of course. Obviously.
<span id="helloPetras" class="energy-link" data-content="Speak to Petras: Hello./Speech/2/+1"></span>
<span id="whoAstarion" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
|wait>[Wait.]{
}](elseif: $time is 1 and $sequence is 1)[(if: $just_said is "helloPetras")[(display: "Petras Ghost Response")
](elseif: $just_said is "whoAstarion")[$astarion This is Petras.
Astarion murmurs quietly to you.
$astarion He's as sharp as club and charming as a bulldog.
$astarion He has the distinction of being my least favorite brother.
$astarion And let me assure you--the competition for that spot is //fierce.//
|wait>[Continue]
]{
}](elseif: $time is 2 and $sequence is 0)[$astarion That's a very familiar doublet you're wearing.
Astarion gestures to the gold-embroidered leather jacket Petras has on. Petras shifts nervously for a moment, then sneers.
$petras Yeah? Funny. No one's been using it for months.
$petras Finders keepers, brother.
<span id="thiefPetras" class="energy-link" data-content="Speak to Petras: Thief./Speech/2/+1"></span>
|wait>[Wait.]{
}](elseif: $time is 2 and $sequence is 1)[(if: $just_said is "thiefPetras")[(display: "Petras Ghost Response")
]{
}](elseif: $time is 3 and $sequence is 0)[Petras moves towards the door, but Astarion moves to intercept him.
$astarion Just a moment.
$petras What is it? Some of us have work to do.
$petras Picking up your slack, since you've been lazing about in...wherever.
Astarion pauses. (if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He is visibly controlling his desire to lash out at this person.]
<span id="tombPetras" class="energy-link" data-content="Speak to Petras: A tomb./Speech/3/+1"></span>
<span id="fuckPetras" class="energy-link" data-content="Speak to Petras: Fuck you./Speech/3/+1"></span>
(if: $player_inventory contains 'knife' or $player_inventory contains 'rusty dagger')[<span id="stabPetras" class="energy-link" data-content="Stab Petras./Touch/6/+1"></span>](else:)[<span id="punchPetras" class="energy-link" data-content="Punch Petras./Touch/6/+1"></span>]
(if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/+1"></span>
]|wait>[Wait.]{
}](elseif: $time is 3 and $sequence is 1)[(if: $just_said is "punchPetras")[You punch Petras, catching him in the jaw.
He yells and staggers back.
//<span class="attention">His Attention +3</span>//<script>updateAttention(3);</script>
|next>[Continue]
](elseif: $just_said is "stabPetras")[You stab Petras.
You stab him just below the shoulder where the padded doublet he's wearing is just a little less padded.
//<span class="attention">His Attention +3</span>//<script>updateAttention(3);</script>
|next>[Continue]
](elseif: $just_said is "violetStab")[Violet jumps out from where she was hiding, behind one of the vases. She lands on Petras' back, clambering up and clinging on like a pointy-eared monkey as she rakes her fingernails and teeth across his scalp, drawing blood.
Petras shouts, flails at her, then slams her repeatedly against the wall until Violet's grip weakens and he manages to wrench her off.
//<span class="attention">His Attention +3</span>//<script>updateAttention(3);</script>
|next>[Continue]
](else:)[(display: "Petras Ghost Response")
]{
}](elseif: $time is 3 and $sequence is 2)[(if: $just_said is "violetStab")[$petras You wretched <i>beast.</i>(set: $frontDoorOpen to true)
He's holding his hand to his head, trying to feel what she did. Violet cackles and spits out a clump of his hair.
Petras lunges at her. Violet darts back. She throws open the front door and vanishes through it.(set: $frontDoorOpen to true)
Petras chases her out.
|next>[Continue]{
(set: $violetWillStab to false)
}](else:)[Petras shouts and turns on Astarion.
$petras Shit! You wretched...
Then he registers that Astarion is still an arm's length away(if: $just_said is "stabPetras")[ and that his hands are empty.](else:)[. That he hadn't moved at all.]
Astarion smiles brightly.
$astarion Is something troubling you, brother?
$petras I. Uh.
|next>[Continue]
]](elseif: $time is 3 and $sequence is 3)[(if: $just_said is "violetStab")[Astarion steps up to the threshold to look after them. Violet and Petras' retreating figures are quickly swallowed by a thick fog.
$astarion Well, that was entertaining.
$astarion Though rather loud.
|wait>[Continue]{
<script>updateTrust(1);</script>
(set: $time to 7)
}](else:)[Petras makes for the door, slamming it open and fleeing into the city.
Astarion steps up to the threshold to look after him. Petras' retreating figure is quickly swallowed by a thick fog.
$astarion That was probably unwise.
$astarion But very satisfying.
|wait>[Continue]{
<script>updateTrust(1);</script>
(set: $frontDoorOpen to true)
(set: $time to 7)
}]](elseif: $time is 4 and $sequence is 0)[$astarion Is there a place in this house that feels like freedom?
$petras What?
$petras What sort of a question is that? Is this some sort of riddle?
$astarion Sort of. Don't think overmuch.
$astarion Just say the first thing that pops into your head.
(if: $sight < 3)[//Astarion whispers something under his breath. <span class="softEmph">Requires: Sight 3</span>//
](else:)[Astarion whispers under his breath:
<span class="softEmph">`[Unlocked: Sight 3]`</span> $astarion Much as it may echo in that empty space.
]
(if: $petrasNoticedGhost is 3)[<span id="whisperPetras1" class="energy-link" data-content="Whisper creepily to Petras: Darkness beckons./Speech/3/+1"></span>
<span id="whisperPetras2" class="energy-link" data-content="Whisper creepily to Petras: Decay waits dreaming./Speech/4/+1"></span>
<span id="whisperPetras3" class="energy-link" data-content="Whisper creepily to Petras: I see you./Speech/4/+1"></span>
]|wait>[Wait.]
](elseif: $time is 4 and $sequence is 1)[Petras flinches and looks wildly around.<script>updateTrust(1);</script>
Astarion covers his mouth with his hand.(if: $sight > 3)[ <span class="softEmph">`[Unlocked: Sight 4]`</span> It doesn't entirely conceal the smile.]
|wait>[Continue]
](elseif: $time is 5 and $sequence is 0)[Petras glances at the wall.
$petras The door's right there.
$petras There. Freedom. Answered your stupid riddle.
(if: $timeReached < $time)[//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>
]$astarion In the shallowest way possible.
$petras You should stop playing games and start doing what the master says.
$petras I'm going out to hunt. As I was told.
(if: $petrasNoticedGhost is 3)[<span id="whisperPetras1" class="energy-link" data-content="Whisper creepily to Petras: Dark eyes watch./Speech/3/+1"></span>
<span id="whisperPetras2" class="energy-link" data-content="Whisper creepily to Petras: Black seas roil./Speech/4/+1"></span>
<span id="whisperPetras3" class="energy-link" data-content="Whisper creepily to Petras: I`ll get you./Speech/4/+1"></span>
<span id="loudNoise" class="energy-link" data-content="Make a loud, startling noise just by Petras' ear./Speech/5/+1"></span>
]|wait>[Wait.]
](elseif: $time is 5 and $sequence is 1)[(if: $just_said is "loudNoise" or $just_said is "whisperPetras3")[Petras shouts in frightened alarm and bolts for the door, slamming it open and fleeing into the city.
Astarion steps up to the threshold to look after him. Petras' retreating figure is quickly swallowed by a thick fog.
When he's gone, Astarion smiles in your direction.
(if: $astarion_trust > 15)[$astarion I adore you.
](elseif: $astarion_trust > 10)[$astarion I'm really unconscionably fond of you, you know?
](else:)[$astarion That was very fun. We should do it again some time.
]
|wait>[Continue]{
<script>updateTrust(2);</script>
<script>addAchieve("Creepy Whispers");</script>
(set: $frontDoorOpen to true)
(set: $time to 7)
}](else:)[Petras has had enough. He turns on his heel and throws the door open, striding quickly through and leaving it open behind him.
Astarion steps up to the threshold to look after him. Petras' retreating figure is quickly swallowed by a thick fog.
When he's gone, Astarion smiles in your direction.
$astarion That was hilarious.
$astarion If you'd been just a little sharper at the end, I bet you could have make him shriek.
|wait>[Continue]{
<script>updateTrust(1);</script>
(set: $frontDoorOpen to true)
(set: $time to 7)
}]](elseif: $time is 6)[Petras leaves. Astarion catches the door before it closes behind him and pushes it entirely open.(set: $frontDoorOpen to true)
He watches as Petras' retreating figure is quickly swallowed by a thick fog.
$astarion Gods, what a bland idiot.
$astarion When life seems particularly miserable, I sometimes console myself by thinking: 'At least I'm not Petras.'
$astarion What a ghastly fate that would be.
|wait>[Wait.]
](elseif: $time is 7 and $sequence is 0)[Astarion leans against the frame of the open door. The world outside is shrouded in fog, but the silhouette of a city is faintly visible.
$astarion I suppose this was a kind of freedom.
$astarion Being able to go out into Baldur's Gate. Forget this place for a while.
$astarion It was horrid, but at least it was a different kind of horrid.
<span id="whoAstarion" class="energy-link" data-content="Speak: Why horrid?/Speech/3/+1"></span>
|wait>[Wait.]
](elseif: $time is 7 and $sequence is 1)[$astarion Because I went out to trawl sordid taverns for victims.
$astarion To seduce and bring back to Cazador so he could feed on them.
$astarion That's what Petras is doing. He's probably off to Fraygo's Flophouse.
$astarion He likes to hunt there. Lots of desperate people with no standards.
|wait>[Continue]{
(set: $astarion_mentioned_seduction to true)
}](elseif: $time is 8 and $sequence is 0)[Astarion examines the door and the misty city beyond.
$astarion This doesn't feel free.
$astarion Every time I walked through this door, I ended up back here at the end of the night.
$astarion But it is a way out.
$astarion Should I...?
He stands indecisively at the threshold. The mist curls around his ankles. (if: $sight < 4)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 4]`</span> Its tendrils are shaped like fingers.]
(if: $sight < 6)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 6</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 6]`</span> There is something terrible out in the mist. But also something valuable.]
<span id="yes" class="energy-link" data-content="Say yes./Speech/0/+1"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0/+1"></span>
|wait>[Let him decide.]
<span id="go" class="energy-link" data-content="Go yourself./Speech/0/+1/0"></span>
](elseif: $time is 8 and $sequence is 1)[(if: $just_said is "yes")[Astarion nods.
$astarion (if: $astarion_trust > 9)[We're](else:)[I'm] not going to get anywhere by being cautious.
He mutters.
$astarion And it's not like it was ever worse than what's in here.
He walks out into the mist.
|mist>[Continue]
](elseif: $just_said is "no")[Asatrion shakes his head and steps back from the door.
$astarion No. Something feels wrong here. This isn't a good answer.
He closes the door.(set: $frontDoorOpen to false)
$astarion (if: $astarion_trust > 9)[We'll](else:)[I'll] find something else.
He turns around and leaves the foyer.
|escapeFoyer>[You feel yourself being drawn after him.]
](elseif: $just_said is "go")[As Astarion deliberates, you |exp1>[move past him.](click: ?exp1)[
//His eyes flicker towards you. Drawn by a vague sense of where you are.//]
You walk out into the mist.
|mistAlone>[Continue]
]{
}](elseif: $time is 9)[Astarion stares out through the doorway for a moment more.
$astarion It's not like it was ever worse than what's in here.
He mutters. He walks out into the mist.
|mist>[Continue]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](elseif: $time is 10)[
](elseif: $time is 11)[
](elseif: $time is 12)[
](elseif: $time is 13)[
](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(click: ?mist)[(set: $sequence to 0)(go-to: "The Mist")]
(click: ?mistAlone)[(set: $sequence to 0)(go-to: "The Mist, Alone")]
(set: $timeReached to $time)
(if: $frontDoorOpen is true)[<script>changeBackground("frontDoorOpen");</script>](else:)[<script>changeBackground("frontDoorClosed");</script>]
}(if: $petrasNoticedGhost is 0)[Petras looks around, confused.(set: $petrasNoticedGhost to it+1)
After a moment, he decides to ignore whatever he just heard.
|wait>[Continue]
](elseif: $petrasNoticedGhost is 1)[Petras glances around.(set: $petrasNoticedGhost to it+1)
$petras Did you just hear another voice?
$astarion No. Of course not.
Astarion says with perfect certainty.
$astarion We're the only two people here.
|wait>[Continue]
](elseif: $petrasNoticedGhost is 2)[$petras I swear I heard...(set: $petrasNoticedGhost to it+1)
$astarion Hmm?
$petras Nothing
|wait>[Continue]
](if: $sequence is 0)[Astarion steps out into the mist.
You are a few steps behind him, still in the doorway.
You can make out his silhouette, |exp1>[looking around.](click: ?exp1)[ |exp2>[//Disoriented.//] (click: ?exp2)[ //As if already lost.//]]
(if: $sight < 3)[He says something you can't make out. //<span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> $astarion This was a mistake.]
|next>[Continue]{
(set: $healthDisplay to true)
<script>changeBackground("fog");</script>
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
(set: $astarion_progress to 0)
(set: $return_value to 3)
(set: $turns_in_mist to 0)
}](elseif: $sequence is 1)[Astarion is trying to walk back to the door. It seems much harder than it should be.(set: $turns_in_mist to 1)
The mist curls around him.
The mist curls into him.
It takes something from him.
(display: "The Mist Takes Something, Astarion")
<span id="call" class="energy-link" data-content="Call out./Speech/5/+1/1"></span>
|next>[Wait.]
{
}](elseif: $sequence is 2)[(if: $just_said is "call")[You shout as loud as you can. It feels muffled by the fog, but you think Astarion turns towards you.(set: $astarion_progress to it+2)](else:)[Astarion is trying to get back to the door.](set: $astarion_progress to it+1)
(if: $astarion_progress > $return_value)[Astarion makes it back through the door.
|rescue>[Continue]
](else:)[The mist curls around him.(set: $turns_in_mist to 3)
It |exp4>[clings to him.](click: ?exp4)[ //Like hands.//]
It takes something from him.
(display: "The Mist Takes Something, Astarion")
(if: $sight < 2)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 2]`</span> You notice something on the ground. It's pale and curling, like mist, but it seems more solid.]
<span id="reach" class="energy-link" data-content="Reach out./Touch/4/+1/1"></span>
(set: $enemyNameText to "the mist")(display: "Player Attack")
(if: $sight > 1)[<span id="take" class="energy-link" data-content="Take the thing on the ground./Touch/0/20/0"></span>
]|next>[Wait.]
{
}]](elseif: $sequence is 3)[(if: $just_said is "hit")[You try to hurt the mist. It's mist. It doesn't care. Astarion is trying to get back to the door.](elseif: $just_said is "reach" and $astarion_progress+3 > $return_value)[You catch his hand.(set: $astarion_progress to it+2)](elseif: $just_said is "reach")[You almost catch his hand, you think perhaps you did for a moment, but then you're just holding curls of mist.(set: $astarion_progress to it+2)](else:)[Astarion is trying to get back to the door.](set: $astarion_progress to it+1)
(if: $astarion_progress > $return_value)[Astarion makes it back through the door.
|rescue>[Continue]
](else:)[The mist |exp1>[curls around him.](click: ?exp1)[ //Like fingers.//](set: $turns_in_mist to 4)
It takes something from him.
(display: "The Mist Takes Something, Astarion")
|next>[Continue]{
}]](elseif: $sequence is 4)[Astarion makes it back through the door.
|rescue>[Continue]
](elseif: $sequence is 5)[Astarion staggers back into the foyer.
He slams the door shut, cutting off the |exp1>[last curls of mist.](click-replace: ?exp1)[last curls of mist that were reaching for him.]
He takes a moment to...not exactly catch his breath. But something in that realm.
<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1/+1/1"></span>
<span id="okay" class="energy-link" data-content="Speak: You okay?/Speech/3/+1/1"></span>
<span id="bad" class="energy-link" data-content="Speak: Mist is bad./Speech/4/+1/1"></span>
|next>[Wait.]
{
<script>changeBackground("frontDoorClosed");</script>
}](elseif: $sequence is 6)[(if: $just_said is "touch")[(if: $astarion_trust > 9)[His hand twitches away from the contact.
$astarion Not. Not right now.
](else:)[His hand twitches away from the contact.
$astarion Don't touch me.
]](elseif: $just_said is "okay")[(if: $astarion_trust > 9)[$astarion No. No, not in the least.
](else:)[$astarion I'm fine.
He lies.
]](elseif: $just_said is "bad")[Astarion laughs threadily.
$astarion Yes. Succinct. Correct.
]$astarion That was not remotely like freedom.
He says, in a feat of bewildering understatement.
$astarion (if: $astarion_trust > 9)[We](else:)[I] have learned something.
$astarion Like Violet said. About the kennel.
$astarion Wherever (if: $astarion_trust > 9)[we](else:)[I] need to go, it is very far away from //that.//
//<span class="escape">Escape +3</span>//<script>updateEscape(3);</script>
|next>[Continue]
](elseif: $sequence is 7)[$astarion Let's get away from here.
He walks quickly down the hall.
|escapeFoyer>[You're drawn after him.]
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[You take the object on the ground.(set: $just_said to "empty")
(display: "Take Fang")
|returnSequence>[Continue]
]{
(click: ?returnSequence)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?rescue)[(set: $sequence to 5)(go-to: $currentPassage)]
}(if: $sequence is 0 and $his_attention+2 >= $his_attention_max)[You are in a richly appointed hallway.
(if: $skip_attention is not true)[Time is passing.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Someone is approaching.
|hisPresence>[Continue]{
(click: ?hisPresence)[(go-to: "His Presence")]
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 0 and $escape >= $escape_max)[You are in a richly appointed hallway.
(if: $skip_attention is not true)[Time is passing.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Astarion pauses by a window.
|aWindow>[Continue]{
(click: ?aWindow)[(go-to: "A Window")]
<script>changeBackground("window");</script>
}](elseif: $sequence is 0 and $unvisitedLocations's length is 0)[You are in a richly appointed hallway. Astarion walks quickly down it.
$astarion Where should we...
He steps on a perfectly normal looking patch of carpet.
|meetYousen>[A trap snaps shut around his leg.]{
(click: ?meetYousen)[(go-to: "Yousen")]
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 0 and $unvisitedLocations's length is 1)[You are in a richly appointed hallway.
(if: $skip_attention is not true)[Time is passing.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Astarion pauses at an intersection.
$astarion Only one option left.
(if: $unvisitedLocations contains "foyer")[$astarion Petras will be going out hunting.(set: $just_said to "petras")
](if: $unvisitedLocations contains "dormitory")[$astarion If Dalyria isn't with Petras, she's likely in the dormitory.(set: $just_said to "dalyria")
](if: $unvisitedLocations contains "office")[$astarion Aurelia is probably harassing the chamberlain.(set: $just_said to "aurelia")
]He starts moving.
|nextArea>[You feel yourself pulled after him.]{
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 0)[You are in a richly appointed hallway.
(if: $skip_attention is not true)[Time is passing.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Astarion pauses at an intersection.
(if: $unvisitedLocations contains "foyer")[$astarion Petras will be going out hunting.
](if: $unvisitedLocations contains "dormitory")[$astarion If Dalyria isn't with Petras, she's likely in the dormitory.
](if: $unvisitedLocations contains "office")[$astarion Aurelia is probably harassing the chamberlain.
]
(if: $unvisitedLocations contains "foyer")[<span id="petras" class="energy-link" data-content="Speak: Petras./Speech/2/+1"></span>
](if: $unvisitedLocations contains "dormitory")[<span id="dalyria" class="energy-link" data-content="Speak: Dalyria./Speech/2/+1"></span>
](if: $unvisitedLocations contains "office")[<span id="aurelia" class="energy-link" data-content="Speak: Aurelia./Speech/2/+1"></span>
]|skip>[Let him decide.]{
(set: $just_said to "empty")
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 1)[(if: $just_said is "petras")[$astarion You know things are dire when (if: $astarion_trust > 9)[we're](else:)[I'm] asking <i>Petras</i> for advice.
$astarion We'll see if we catch him before he leaves to hunt.
](elseif: $just_said is "dalyria")[$astarion Dalyria is likely to be more helpful than most of the others put together.
](elseif: $just_said is "aurelia")[$astarion Aurelia does tend to know things.
Astarion says with a palpable reluctance.
$astarion Let's check the chamberlain's office.
]He starts moving.
|nextArea>[You feel yourself pulled after him.]{
}](elseif: $sequence is 2)[(if: $unvisitedLocations contains "dormitory")[$astarion Dalyria is likely to be more helpful than most of the others put together.(set: $just_said to "dalyria")
Astarion decides.
](elseif: $unvisitedLocations contains "office")[$astarion Aurelia does tend to know things.(set: $just_said to "aurelia")
Astarion says with a palpable reluctance.
$astarion Let's check the chamberlain's office.
](else:)[$astarion You know things are dire when (if: $astarion_trust > 9)[we're](else:)[I'm] asking <i>Petras</i> for advice.(set: $just_said to "petras")
$astarion We'll see if we catch him before he leaves to hunt.
]He starts moving.
|nextArea>[You feel yourself pulled after him.]{
}](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?nextArea)[
(set: $sequence to 1)
(if: $just_said is "petras")[(go-to: "Foyer")
](elseif: $just_said is "dalyria")[(go-to: "Dormitory")
](elseif: $just_said is "aurelia")[(go-to: "Chamberlain Office")
]
(go-to: "Spawn Dormitory")]
(set: $draw_attention_blocked to "empty")
(set: $skip_attention to false)
}(if: $sequence is 0)[You are standing in mist.
There is nothing but pale fog all around you.
In front of you there is a tooth, as long as your arm.
It's planted in the ground, as if gnawing on the very earth.
<span id="take" class="energy-link" data-content="Take the tooth./Touch/0/+1/0"></span>
<span id="leave" class="energy-link" data-content="Leave it./Touch/0/+1/0"></span>{
(set: $healthDisplay to false)
<script>changeBackground("fog");</script>
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](elseif: $sequence is 1)[(if: $just_said is "take")[You pull the tooth out of the ground.
(display: "Take Fang")
|next>[Continue]
](elseif: $just_said is "leave")[You don't trust that. You take a step away from the fang.
It is immediately lost in the mist.
|next>[Continue]
]{
(set: $astarion_looking_for_you to 0)
(set: $finds_you to 4)
(set: $turns_in_mist to 1)
(if: $astarion_trust is 20)[(set: $astarion_looking_for_you to 3)]
(elseif: $astarion_trust > 15)[(set: $astarion_looking_for_you to 2)]
(elseif: $astarion_trust > 10)[(set: $astarion_looking_for_you to 1)]
}](elseif: $sequence is 2)[The mist curls around you.(set: $turns_in_mist to 2)
The mist curls into you.
It takes something from you.
(display: "The Mist Takes Something")
(if: $energy is 0 and $speech is 0)[|mistEnd>[There is nothing left of you.]
](else:)[|next>[Get out.]
<span id="call" class="energy-link" data-content="Call for help./Speech/5/+1/1"></span>
]{
}](elseif: $sequence is 3)[(if: $just_said is "call")[You shout as loud as you can for help. It feels muffled by the fog.(set: $astarion_looking_for_you to it+2)](else:)[You struggle through the mist.](set: $astarion_looking_for_you to it+1)
(if: $astarion_looking_for_you > $finds_you)[Someone grabs hold of your hand and pulls you back through the door.
|rescue>[Continue]
](else:)[The mist curls around you.(set: $turns_in_mist to 3)
It |exp4>[clings to you.](click: ?exp4)[ //Like hands.//]
It takes something from you.
(display: "The Mist Takes Something")
(if: $energy is 0 and $speech is 0)[|mistEnd>[There is nothing left of you.]
](else:)[|next>[Get out.]
<span id="see" class="energy-link" data-content="Try to see the way back./Sight/6/+1/0"></span>
(set: $enemyNameText to "the mist")(display: "Player Attack")
]{
}]](elseif: $sequence is 4)[(if: $just_said is "hit")[You try to hurt the mist. It's mist. It doesn't care.](elseif: $just_said is "see")[You think you take a few steps in the right direction, but then you're not sure anymore.(set: $astarion_looking_for_you to it+2)](else:)[You struggle through the mist.](set: $astarion_looking_for_you to it+1)
(if: $astarion_looking_for_you > $finds_you)[Someone grabs hold of your hand and pulls you back through the door.
|rescue>[Continue]
](else:)[The mist |exp1>[curls around you.](click: ?exp1)[ //Like fingers.//](set: $turns_in_mist to 4)
It takes something from you.
(display: "The Mist Takes Something")
(if: $energy is 0 and $speech is 0)[|mistEnd>[There is nothing left of you.]
](else:)[|next>[Panic.]
|next>[Give up.]
|next>[Get //out.//]
]{
}]](elseif: $sequence is 5)[Everything is just hideous, formless mist and it keeps taking things from you and you can't //leave.//(set: $turns_in_mist to 5)
Someone grabs hold of your hand and pulls you back through the door.
|next>[Continue]
](elseif: $sequence is 6)[You are pulled back into the foyer.
Astarion slams the door shut, cutting off the |exp1>[last curls of mist.](click-replace: ?exp1)[last curls of mist that were reaching for you.]
|next>[You're okay.]
|next>[The world is solid.]
(if: $turns_in_mist > 2)[|next>[That was hateful.]
](if: $turns_in_mist > 4)[|gray1>[Have a breakdown.] (click: ?gray1)[//You don't have time for that.//]
]{
<script>changeBackground("frontDoorClosed");</script>
(set: $healthDisplay to true)
(click: ?breakdown)[(set: $sequence to it+1)(set: $just_said to "breakdown")(go-to: $currentPassage)]
}](elseif: $sequence is 7)[(if: $just_said is "breakdown")[You don't have time for that right now.
]$astarion That was not remotely like freedom.
He says, in a feat of bewildering understatement.
$astarion We have learned something.
$astarion Like Violet said. About the kennel.
$astarion Wherever we need to go, it is very far away from //that.//
//<span class="escape">Escape +3</span>//<script>updateEscape(3);</script>
|next>[Continue]
](elseif: $sequence is 8)[$astarion Let's get away from here.
He walks quickly down the hall.
|escapeFoyer>[You're drawn after him.]
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 20)[Perhaps there are still dreams to escape and monsters to fight.
But the mist takes everything that you are.
And there is nothing left of you to care.
|goToTitle>[Return to title.]{
<script>
addAchieve("Lost In Mist");
</script>
(set: $healthDisplay to false)
(set: $energyDisplay to false)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}]{
(click: ?mistEnd)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?rescue)[(set: $sequence to 6)(go-to: $currentPassage)]
}(set: $bastellusFangs to it+1)(if: $bastellusFangs is 1)[It is not real. It is like you. A shadow in this place. You pick it up effortlessly.<script>addAchieve("Like Pulling Teeth");</script>
<span class='inv'>$player_name gained (display: "Fang Weapon Name")</span>
](elseif: $bastellusFangs is 2)[It is drawn immediately to the fang you already have. They fuse together. They become something new.
<span class='inv'>$player_name gained (display: "Fang Weapon Name")</span>
<span class='energy'>Using this weapon takes less energy and only requires Touch 5.</span>
](elseif: $bastellusFangs is 3)[It is drawn immediately to the fangs you already have. They fuse together. They become something new.
<span class='inv'>$player_name gained (display: "Fang Weapon Name")</span>
<span class='energy'>Using this weapon takes less energy and only requires Touch 3.</span>
](elseif: $bastellusFangs is 4)[It is drawn immediately to the fangs you already have. They fuse together. They become something new.
<span class='inv'>$player_name gained (display: "Fang Weapon Name")</span>
<span class='energy'>A dream that cuts. Using this weapon only requires Touch 1.</span>
](elseif: $bastellusFangs is 5)[It is drawn immediately to the fangs you already have. They fuse together. They become something new.
<span class='inv'>$player_name gained (display: "Fang Weapon Name")</span>
<span class='energy'>A mouth that devours itself. Using this weapon is effortless. It requires only that you want to hurt something.</span><script>addAchieve("A Sword Called Ouroboros");</script>]{(if: $bastellusFangs is 1)[Bastellus Fang
](elseif: $bastellusFangs is 2)[Fanged Knife
](elseif: $bastellusFangs is 3)[Fanged Shortsword
](elseif: $bastellusFangs is 4)[Fanged Sword
](elseif: $bastellusFangs is 5)[Ouroboros
]}(if: $player_inventory contains 'blue flower')[<span class='inv'>Lost blue flower.</span>(set: $player_inventory to it - (a: 'blue flower'))
](elseif: $player_inventory contains 'clive')[<span class='inv'>Lost stuffed bear.</span>(set: $player_inventory to it - (a: 'clive'))
](elseif: $player_inventory contains 'music box')[<span class='inv'>Lost music box.</span>(set: $player_inventory to it - (a: 'music box'))
](elseif: $energy > 0)[You're not sure what. But it hurts.
<span class='energy'>//Lost 3 Energy//</span>(set: $energy_change to -3)(display: "update energy silent")
](else:)[Your voice. It's taking your voice.
<span class='energy'>//Lost 1 Speech//</span>(set: $speech to it-1)<script>playAudio("aa_damage");</script>
](if: $astarion_inventory contains 'blue flower')[<span class='inv'>Lost blue flower.</span>(set: $astarion_inventory to it - (a: 'blue flower'))
](elseif: $astarion_inventory contains 'clive')[<span class='inv'>Lost stuffed bear.</span>(set: $astarion_inventory to it - (a: 'clive'))
](else:)[(set: $health_change to -6)(display: "update health")
](if: $time is 1)[Astarion is talking to Dalyria.{
}](elseif: $time is 2)[Astarion and Dalyria are discussing the rat.(if: $astarion_inventory contains 'wine bottle' and $timeReached < $time)[
<span class='inv'>Astarion lost wine bottle.</span>(set: $astarion_inventory to it-(a: "wine bottle"))(set: $dalyriaAgreement to "second bite")](elseif: $astarion_inventory contains 'novel' and $timeReached < $time)[
<span class='inv'>Astarion lost novel.</span>(set: $astarion_inventory to it-(a: "novel"))(set: $dalyriaAgreement to "second bite")]{
}](elseif: $time is 3)[Astarion and Dalyria are working on catching the rat.{
}](elseif: $time is 4)[Astarion and Dalyria are working on catching the rat.{
}](elseif: $time is 5)[Astarion and Dalyria are working on catching the rat. It has taken some time.(if: $timeReached is not $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]{
}](elseif: $time is 6)[(if: $dalyriaAgreement is "first bite")[Dalyria catches the rat.(set: $ratLocation to "Dalyria")](else:)[Astarion catches the rat.(set: $ratLocation to "Astarion")]{
}](elseif: $time is 7)[(if: $ratLocation is "EscapedPlayerFault")[Both vampires are glaring at you.(if: $timeReached is not $time)[<script>updateTrust(-2);</script>]{
}](elseif: $ratLocation is "Dalyria" and $dalyriaAgreement is "first bite")[Dalyria drinks from the rat then hands the remains to Astarion.(if: $timeReached is not $time)[
(set: $health_change to 6)(display: "update health")]{
}](else:)[Astarion drinks from the rat then hands the remains to Dalyria.(if: $timeReached is not $time)[
(set: $health_change to 10)(display: "update health")<script>addAchieve("First Bite");</script>]{
}]](elseif: $time is 8)[Astarion is talking to Dalyria.{
}](elseif: $time is 9)[Astarion is talking to Dalyria.{
}](elseif: $time is 10)[Dalyria answers Astarion's question.(if: $timeReached is not $time)[
<span class="escape">Escape +2</span><script>updateEscape(2);</script>]{
}](elseif: $time is 11)[(set: $sequence to 0)(go-to: "Dormitory Watch"){
}](elseif: $time is 12)[
](elseif: $time is 13)[
](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(set: $timeReached to $time)
<script>changeBackground("dormitory");</script>
}{
(if: $sequence is 0)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
](else:)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
]
}(if: $time is 1 and $sequence is 0)[$astarion Dalyria. I have a question for...what are you doing?
Dalyria is crouched on the ground.
$dal There's a rat under the bed.
Astarion immediately crouches beside her.
$astarion Where?
$dal Behind the headboard. Wedged between it and the wall.
$dal Help me catch it and you can have second bite.
<span id="helloDal" class="energy-link" data-content="Speak to Dalyria: Hello./Speech/2/+1"></span>
<span id="whoAstarion" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
|wait>[Wait.]{
}](elseif: $time is 1 and $sequence is 1)[(if: $just_said is "helloDal")[$dal Hello.
She seems completely unperturbed by the fact something invisible has addressed her. She is very focused on the rat.
|wait>[Continue]
](elseif: $just_said is "whoAstarion")[$astarion Dalyria is my middle sister.
Astarion murmurs quietly to you.
$astarion She's fine. Better than almost anyone else in this shithole.
$astarion Though she has terrible taste in company.
|wait>[Continue]
]{
}](elseif: $time is 2 and $sequence is 0)[Astarion and Dalyria are discussing the rat.
$astarion I want first bite. For my help. I'm faster than you are.
$dal Second bite. I found it. I could probably do this without you. Unless you have something to trade.
(if: $astarion_inventory contains 'wine bottle' and $timeReached < $time)[$astarion Give me first bite and I'll give you this.(set: $dalyriaAgreement to "second bite")
He offers Dalyria the half-empty wine bottle. She tears her eyes away from the rat long enough to examine the bottle. She nods and takes it.
<span class='inv'>Astarion lost wine bottle.</span>(set: $astarion_inventory to it-(a: "wine bottle"))
$dal All right. I'll scare. You catch.
$astarion Marvelous. Also there's a ghost who might do some ghostly nonsense. Don't be startled.
$dal Fine.
](elseif: $astarion_inventory contains 'novel' and $timeReached < $time)[$astarion Give me first bite and I'll give you this.(set: $dalyriaAgreement to "second bite")
He offers Dalyria the novel. She tears her eyes away from the rat long enough to examine the book. She nods and takes it.
<span class='inv'>Astarion lost novel.</span>(set: $astarion_inventory to it-(a: "novel"))
$dal All right. I'll scare. You catch.
$astarion Marvelous. Also there's a ghost who might do some ghostly nonsense. Don't be startled.
$dal Fine.
](else:)[$astarion I don't. Fine. Second bite.
$dal You scare. I'll catch.
$astarion I would be better at catching.
$dal Yes, but you're hungry and I don't trust you not to just eat it.
$astarion Fair. Also there's a ghost who might do some ghostly nonsense. Don't be startled.
$dal Fine.
]
(if: $dalyriaAgreement is "first bite")[<span id="trade" class="energy-link" data-content="Speak to Dalyria: Trade./Speech/2/+1"></span>
]|wait>[Wait.]
](elseif: $time is 2 and $sequence is 1)[(if: $just_said is "trade")[Dalyria frowns in your direction.
$dal You want first bite? I'm not splitting this three ways.
$astarion I believe they're offering on my behalf.
This throws Dalyria for a moment, but she quickly recovers.
$dal Show me what you have.
(if: $player_inventory contains 'wine bottle')[<span id="wine_bottle" class="energy-link" data-content="Offer her the wine bottle./Touch/0/+1/0"></span>](else:)[|gray1>[Offer her the wine bottle.] (click: ?gray1)[//You don't have that.//]]
(if: $player_inventory contains 'novel')[<span id="novel" class="energy-link" data-content="Offer her the novel./Touch/0/+1/0"></span>](else:)[|gray2>[Offer her the novel.] (click: ?gray2)[//You don't have that.//]]
|next>[Offer nothing.](set: $just_said to "empty")
]](elseif: $time is 2 and $sequence is 2)[(if: $just_said is "wine bottle" or $just_said is "novel")[Dalyria nods and takes that.
<span class='inv'>$palyer_name lost $just_said.</span>(set: $player_inventory to it-(a: $just_said))
$dal All right. I'll scare. You catch.
$astarion Marvelous.
|wait>[Continue]
](else:)[You can't find anything to interest Dalyria in your inventory.
She turns her attention back to the rat.
|wait>[Continue]
]{
}](elseif: $time is 3 and $sequence is 0)[Astarion and Dalyria are working on catching the rat.
They're moving quietly around the bed, watching the headboard.
(display: "Rat Options"){
}](elseif: $time is 3 and $sequence is 1)[(display: "Rat Results"){
}](elseif: $time is 4 and $sequence is 0)[Astarion and Dalyria are working on catching the rat.
They're moving quietly around the bed, watching the headboard.
(display: "Rat Options"){
}](elseif: $time is 4 and $sequence is 1)[(display: "Rat Results"){
}](elseif: $time is 5 and $sequence is 0)[Astarion and Dalyria are working on catching the rat. It has taken some time.(if: $timeReached is not $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
They've both settled where they want to be and seem to be on the cusp of action.
(display: "Rat Options"){
}](elseif: $time is 5 and $sequence is 1)[(display: "Rat Results"){
}](elseif: $time is 6)[(if: $dalyriaAgreement is "first bite")[Astarion hisses.
A fat black rat darts out from under the bed.
Dalyria snatches it up.(set: $ratLocation to "Dalyria")
|wait>[Wait.]
](else:)[Dalyria hisses.
A fat black rat darts out from under the bed.
Astarion snatches it up.(set: $ratLocation to "Astarion")
|wait>[Wait.]
]{
}](elseif: $time is 7)[(if: $ratLocation is "EscapedPlayerFault")[Both vampires glare in your direction.<script>updateTrust(-2);</script>
Neither of them say anything.
After a moment, Dalyria sighs and sits on her bed.
Astarion follows suit.
|wait>[Wait.]
](elseif: $ratLocation is "Dalyria" and $dalyriaAgreement is "first bite")[Dalyria bites into the side of the rat. It squeals hideously as it dies.
She sucks out a mouthful of blood. Then closes her eyes and licks her lips clean. She exhales slowly.
After a moment, she offers the small corpse to Astarion, who has been watching her with fixed attention. Astarion takes it and starts gnawing at it, working the blood out with his teeth and tongue.
(if: $timeReached is not $time)[(set: $health_change to 6)(display: "update health")
]Dalyria sits down on one of the beds. Astarion follows suit.
|wait>[Wait.]
](elseif: $ratLocation is "Dalyria" and $dalyriaAgreement is "second bite")[Dalyria stares at the rat in her hands as it writhes in blind panic. Then, with obvious reluctance and difficulty, she gives the squirming thing to Astarion.
Astarion immediately bites into its side. The rat squeals hideously as it dies.
(if: $timeReached is not $time)[(set: $health_change to 10)(display: "update health")<script>addAchieve("First Bite");</script>
]Eventually, Astarion hands the rat back to Dalyria. She starts worrying the corpse with her teeth. Astarion licks his mouth and hands clean.
Dalyria sits down on one of the beds. Astarion follows suit.
|wait>[Wait.]
](elseif: $ratLocation is "Astarion" and $dalyriaAgreement is "first bite")[Astarion bites into the side of the rat. It squeals hideously as it dies.
(if: $timeReached is not $time)[(set: $health_change to 10)(display: "update health")<script>addAchieve("First Bite");</script>
]He sucks out a mouthful of blood, then lets his hand fall away from his mouth. Dalyria is glaring at him.
$dal Damn it, Astarion.
$astarion I'm terribly sorry sister. I just couldn't control myself.
$astarion But of course the rest is yours.
He offers her the small corpse. She grabs it out of his hand. She starts gnawing at it, working the blood out with her teeth and tongue.
Dalyria sits down on one of the beds. Astarion follows suit.
|wait>[Wait.]
](elseif: $ratLocation is "Astarion" and $dalyriaAgreement is "second bite")[Astarion bites into the side of the rat. It squeals hideously as it dies.
(if: $timeReached is not $time)[(set: $health_change to 10)(display: "update health")<script>addAchieve("First Bite");</script>
]Eventually, Astarion hands the rat back to Dalyria. He licks his mouth and hands clean. She starts worrying the corpse with her teeth.
Dalyria sits down on one of the beds. Astarion follows suit.
|wait>[Wait.]
]{
}](elseif: $time is 8 and $sequence is 0)[(if: $ratLocation is "Astarion" and $dalyriaAgreement is "first bite")[Gnawing on the rat seems to soothe Dalyria's irritation and soon she starts talking again.](else:)[There is quiet for a little while, then Dalyria looks as Astarion curiously.]
$dal You got out.
She sounds pleased, but also concerned. Astarion shifts uncomfortably.
$astarion Yes.
$dal Are you sure that's wise?
$astarion I have a plan.
$dal Really?
He frowns irritably at her.
$astarion Don't sound so surprised.
$dal My apologies. I'm sure it's a very sound plan.
(if: $sight < 3)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> She says with all the polite indifference of someone who doesn't think this is going to directly affect her.]
<span id="doom" class="energy-link" data-content="Speak: Doomed./Speech/2/+1"></span>
<span id="good" class="energy-link" data-content="Speak: Good plan./Speech/3/+1"></span>
<span id="wip" class="energy-link" data-content="Speak: Work in progress./Speech/4/+1"></span>
|wait>[Wait.]
](elseif: $time is 8 and $sequence is 1)[(if: $just_said is "wip")[(if: $astarion_trust < 10)[Astarion squints in your direction, as if he suspects that you're mocking him.](else:)[$astarion Yes, I suppose.]
Dalyria nods. She looks as if she thinks this makes more sense.
|wait>[Continue]
](elseif: $just_said is "good")[Dalyria makes a polite, non-committal noise.
|wait>[Continue]
](elseif: $just_said is "doom")[$astarion No one asked you.<script>updateTrust(-1);</script>
Astarion almost snarls.(if: $astarion_trust > 10)[ He seems rattled by the comment.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
|wait>[Continue]
]{
}](elseif: $time is 9)[$dal You were going to ask me a question.
$astarion Yes. It's going to sound strange, but this is important, so think about it before answering.
$astarion Can you think of anywhere in the palace that feels like freedom?
$dal That is a strange question. It's almost poetic.
$dal I thought you didn't like poetry?
$astarion I am making an exception. Well?
$dal Let me think.
|wait>[Wait.]
](elseif: $time is 10 and $sequence is 0)[Dalyria ruminates on Astarion's question for a while.
$dal I can't think of a place, but I do have an opinion on freedom.
$astarion Let's have it then.
$dal Freedom is understanding. If we understand the context of what imprisons us, we can reason a way out.
(if: $timeReached is not $time)[<span class="escape">Escape +2</span><script>updateEscape(2);</script>
]Astarion nods slowly.
$astarion I suppose that makes sense.
(if: $sight < 2)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 2]`</span> Dalyria Looks like she has more to say, but is hesitating.]
<span id="anything" class="energy-link" data-content="Speak to Dalyria: Anything else?/Speech/3/+1"></span>
|wait>[Wait.]
](elseif: $time is 10 and $sequence is 1)[(if: $ratLocation is "EscapedPlayerFault")[Dalyria looks intently as Astarion.](else:)[(if: $ratLocation is "Dalyria" and $dalyriaAgreement is "first bite")[Dalyria reaches over and takes the now very exsanguinated rat back from Astarion. She stares at the small dead body.](else:)[Dalyria stares at the small dead body in her hands.] Then she looks intently as Astarion.]
$dal We're in hell. We live in hell.
$astarion I'm not going to argue with you.
$dal No one can judge us for what we must do to escape hell.
$dal No one.
<span class="escape">Escape +1</span><script>updateEscape(1);</script>
She speaks with alarming intensity. Astarion leans back slightly.
$astarion No. No, of course not.
|wait>[Continue]
](elseif: $time is 11)[(if: $just_said is "anything")[Astarion gets up hastily.](else:)[Astarion gets up.]
$astarion Well, this was lovely, Dal. But we'd better get going.
$dal Good luck. With your plan. I hope it works.
(if: $sight < 4)[//Something exists beyond your perception. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 4]`</span> She doesn't think whatever he's trying to do is going to work. That makes her sad, and she's trying to distance herself from it.]
Astarion leaves the dormitory.
|escapeFoyer>[You're drawn after him.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](elseif: $time is 12)[
](elseif: $time is 13)[
](elseif: $time is 14)[
](elseif: $time is 15)[
](elseif: $time is 16)[
]{
(click: ?escapeDorm)[(set: $sequence to 0)(go-to: "The Mist")]
(set: $timeReached to $time)
<script>changeBackground("dormitory");</script>
}(if: $sequence is 0)[You are in a beautifully appointed chamber. Spacious, with many paintings, fine furniture, a private bath, and comfortable beds.
There's a little girl sitting on one of the beds. She's holding a stuffed owlbear toy and singing to herself. Her name is Victoria.(if: $tookFangDormitory is not true)[
There is a tooth as long as your forearm on the ground in front of you. It is nestled in the fibers of |exp1>[a thick, opulent rug.](click: ?exp1)[ //Which looks more comfortable than any of the mattress in the other room.//]]
|next>[Approach the girl.]
|skip2>[Listen to the song.]
(if: $tookFangDormitory is not true)[|skip>[Take the tooth.]
]|returnDormitory>[Return to the dormitory.]{
<script>changeBackground("favor");</script>
<script>addAchieve("Meet Victoria");</script>
(click: ?returnDormitory)[(go-to: "Dormitory")]
}](elseif: $sequence is 1)[As you move across the room your vision blurs. The world around you begins to feel murky and indistinct.
You back up, returning to the wall. The feeling fades.
Astarion is in the other room. You can't wander too far from the dreamer.
|return>[Continue]
](elseif: $sequence is 2)[You pick up the tooth lying on the beautiful rug.
(display: "Take Fang")
|return>[Continue]{
(set: $tookFangDormitory to true)
}](elseif: $sequence is 3)[(if: $victoriaSinging is "river")[The girl trying to sing the song she heard. Her sense of melody is vague and wavering.
$victoria Hanging moon in fog.
$victoria Mists will take what you have lost.
$victoria Flowers, softness, speech.
$victoria Down, down, down by the river.
You're not sure those lyrics are right.
](else:)[$victoria All we have are stars tonight.
$victoria Smile and pain will fade away.
$victoria Dust is dust and ash is ash.
$victoria Keep the night and hide the day.
She repeats these lyrics, as if they are the only part of the song she knows.
She moves her owlbear toy as she sings, pantomiming him performing in duet.
]
|return>[Continue]
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $time != 5 and not ($astarion_act3_talked contains "tellAstarionScareRat"))[<span id="tellAstarionScareRat" class="energy-link" data-content="Speak to Astarion: I scare rat./Speech/4/+1"></span>
](if: $speech >= 5)[<span id="scareRatAstarion" class="energy-link" data-content="Scare rat towards Astarion./Speech/5/+1"></span>](else:)[<span id="scareRatAstarion" class="energy-link" data-content="Scare rat towards Astarion./Touch/3/+1"></span>]
(if: $speech >= 5)[<span id="scareRatDalyria" class="energy-link" data-content="Scare rat towards Dalyria./Speech/5/+1"></span>](else:)[<span id="scareRatDalyria" class="energy-link" data-content="Scare rat towards Dalyria./Touch/3/+1"></span>]
(if: $class is "druid")[<span id="lureAstarion" class="energy-link" data-content="[DRUID] Lure rat towards Astarion./Speech/5/+1"></span>
<span id="lureDalyria" class="energy-link" data-content="[DRUID] Lure rat towards Dalyria./Speech/5/+1"></span>
](if: $class is "ranger")[<span id="lureAstarion" class="energy-link" data-content="[RANGER] Lure rat towards Astarion./Speech/5/+1"></span>
<span id="lureDalyria" class="energy-link" data-content="[RANGER] Lure rat towards Dalyria./Speech/5/+1"></span>
]|wait>[Wait.](if: $just_said is "tellAstarionScareRat")[$astarion Ah. What a little poltergeist.
$astarion Yes. Towards me.(set: $astarion_act3_talked to it+"tellAstarionScareRat")
|wait>[Continue]
](elseif: $just_said is "scareRatAstarion")[(if: $astarion_act3_talked contains "tellAstarionScareRat")[You frighten the rat towards Astarion. It skitters out of its hiding place.
Warned and expecting this, Astarion snatches it off the ground.(set: $ratLocation to "Astarion")
|ratResolution>[Continue]
](elseif: $time is 5)[You frighten the rat towards Astarion. It skitters out of its hiding place.
It's a few moments earlier than he was expecting, but he is where he wants to be and paying attention.
He snatches it off the ground.(set: $ratLocation to "Astarion")
|ratResolution>[Continue]
](else:)[You frighten the rat towards Astarion. It skitters out of its hiding place.
He wasn't expecting this and scrambles to grab it.
(if: $health > $maxHealth/2)[He manages to snatch it off the ground.(set: $ratLocation to "Astarion")](else:)[Normally he would manage it easily, but injuries and starvation have taken a toll on his health.
The rat darts away through a hole in the wall.(set: $ratLocation to "EscapedPlayerFault")]
|ratResolution>[Continue]
]](elseif: $just_said is "scareRatDalyria")[(if: $time is 5)[You frighten the rat towards Dalyria. It skitters out of its hiding place.
It's a few moments earlier than she was expecting and she scrambles to grab at it. She misses.
The rat darts away through a hole in the wall.(set: $ratLocation to "EscapedPlayerFault")
|ratResolution>[Continue]
](else:)[You frighten the rat towards Dalyria. It skitters out of its hiding place.
She wasn't expecting this and scrambles to grab it.
She fails entirely. The rat darts away through a hole in the wall.(set: $ratLocation to "EscapedPlayerFault")
|ratResolution>[Continue]
]{
}](elseif: $just_said is "lureAstarion")[You lure the rat gently out from its hiding place, leading it across the stone floor towards Astarion.
He grabs it easily.(set: $ratLocation to "Astarion")
|ratResolution>[Continue]
](elseif: $just_said is "lureDalyria")[You lure the rat gently out from its hiding place, leading it across the stone floor towards Dalyria.
She grabs it easily.(set: $ratLocation to "Dalyria")
|ratResolution>[Continue]
]{
(click: ?ratResolution)[(set: $sequence to 0)(set: $time to 7)(go-to: $currentPassage)]
}(if: $his_attention_once is true and $health is not 0)[He finds you.
Of course he finds you.
He always finds you.{
<script>playAudio("aa_scream");</script>
<script>changeBackground("attention3");</script>
<script>musicLoop(""); </script>
(set: $health to 0)
(live: 10s)[
(set: $sequence to 13)(go-to: $currentPassage)
]
}](elseif: $sequence is 0)[Someone is approaching.
You hear the soft tap of a staff against the floor.
Astarion has pressed himself into a shadowed corner.
<span id="who" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
|skip>[Watch.]{
<script>changeBackground("attention1");</script>
<script>musicLoop("env_tapping"); </script>
}](elseif: $sequence is 1)[$astarion Quiet. Be quiet.
$astarion Please be quiet.
|next>[Continue]
](elseif: $sequence is 2)[Something is approaching.
There's something wrong with the walls.
Astarion has |exp1>[pressed himself into a shadowed corner.](click: ?exp1)[ <span class="cazador">Cowering like vermin.</span>]
|hide>[Hide.]
|next>[Watch.]{
<script>changeBackground("attention2");</script>
<script>musicLoop("env_tapping2"); </script>
}](elseif: $sequence is 3)[A wave of jagged noise is walking down the wall.
Something this mind cannot coalate into a single cohesive shape.
Astarion has |exp1>[pressed himself into a shadowed corner.](click: ?exp1)[ <span class="cazador">Cowering like vermin. You are what you eat.</span>]
|hide>[Hide.]
<span id="hit" class="energy-link" data-content="Attack Him./Touch/0/+1/0"></span>
|leadAway>[Lead Him away.]
<span class="explain">There will be a cost.</span>
|leadAstarion>[Lead Him to Astarion.]
<span class="explain">This will end the game.</span>{
<script>musicLoop("env_tapping3"); </script>
}](elseif: $sequence is 4)[|exp1>[You can't.](click: ?exp1)[
|exp2>[You can't.](click: ?exp2)[
|exp3>[You can't.](click: ?exp3)[ |exp4>[You can't.](click: ?exp4)[ |exp5>[You can't.](click: ?exp5)[ |exp6>[You can't.](click: ?exp6)[ |exp7>[You can't.](click: ?exp7)[ ]]]]]]]
|hide>[Hide.]
|leadAway>[Lead Him away.]
<span class="explain">There will be a cost.</span>
|leadAstarion>[Lead Him to Astarion.]
<span class="explain">This will end the game.</span>{
}](elseif: $sequence is 5)[You move close enough to catch <span class="attention">His Attention.</span>
It cuts into you. It cuts something out of you.
(if: $touch > 0)[<span class='energy'>//Lost 1 Touch//</span>(set: $touch to it-1)<script>playAudio("aa_damage");</script>](else:)[<span class='energy'>//Lost 1 Speech//</span>(set: $speech to it-1)<script>playAudio("aa_damage");</script>]
But he moves away from where Astarion is hiding.
//<span class="attention">His Attention -6</span>//<script>updateAttention(-6);</script>
|next>[Lead Him further away.]
<span class="explain">There will be a cost.</span>
|away>[Get away.]{
<script>playAudio("aa_damage");</script>
}](elseif: $sequence is 6)[You remain in the glare of <span class="attention">His Attention.</span>
It cuts into you. It cuts something out of you.
(if: $touch > 0)[<span class='energy'>//Lost 1 Touch//</span>(set: $touch to it-1)<script>playAudio("aa_damage");</script>](else:)[<span class='energy'>//Lost 1 Speech//</span>(set: $speech to it-1)<script>playAudio("aa_damage");</script>]
But he moves away from where Astarion is hiding.
//<span class="attention">His Attention -6</span>//<script>updateAttention(-4);</script>
|next>[Lead Him further away.]
<span class="explain">There will be a cost.</span>
|away>[Get away.]{
<script>playAudio("aa_damage");</script>
}](elseif: $sequence is 7)[It hurts.
(if: $touch > 0)[<span class='energy'>//Lost 1 Touch//</span>(set: $touch to it-1)<script>playAudio("aa_damage");</script>](else:)[<span class='energy'>//Lost 1 Speech//</span>(set: $speech to it-1)<script>playAudio("aa_damage");</script>]
It //hurts.//
//<span class="attention">His Attention -6</span>//<script>updateAttention(-4);</script>
You can't do this anymore.
|away>[Get away.]{
<script>playAudio("aa_damage");</script>
}](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[Are you sure?
|next>[Yes.]
|choice>[No. Don't.]{
}](elseif: $sequence is 11)[Why are you doing this?
(if: $sigh_proposal is "accepted")[|sighProposal>[`[SIGH'S PROPOSAL]` This is how I save the city.]
]|next>[`[DARK URGE]` My father told me to.]
|next>[I don't need a reason.]
|choice>[Please. Don't.]{
(click: ?sighProposal)[(set: $just_said to "sigh")(set: $sequence to it+1)(go-to: $currentPassage)]
}](elseif: $sequence is 12)[Of course he finds you.
He always finds you.{
<script>playAudio("aa_scream");</script>
<script>changeBackground("attention3");</script>
<script>musicLoop(""); </script>
(set: $health to 0)
(live: 10s)[
(set: $sequence to 13)(go-to: $currentPassage)
]
}](elseif: $sequence is 13)[{
(live: 1s)[
(if: $sigh_proposal is "accepted" and $just_said is "sigh")[(set: $sequence to 0)(go-to: "Sigh's Ending")]
(else:)[(go-to: "Death Sigh")]
]
<script>
resetScreen();
musicStopAll();
</script>
(set: $healthDisplay to false)
}](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 20)[You find a dark corner and make yourself |exp1>[as small as possible.](click: ?exp1)[ <span class="cazador">If there is less of you there is less to hurt.</span>]
The man |exp2>[passes by.](click: ?exp2)[ <span class="cazador">But he will find you.</span>]
//<span class="attention">His Attention -3</span>//<script>updateAttention(-3);</script>
That |exp3>[was luck.](click: ?exp3)[ <span class="cazador">Do you understand how lucky you are?</span>]
There's no more room to |exp4>[make mistakes.](click: ?exp4)[ <span class="cazador">That I am so lenient with your constant failure?</span>]
|next>[Continue]{
<script>musicLoop("env_tapping"); </script>
}](elseif: $sequence is 21)[The hallway is just a hallway again.
Astarion emerges from his hiding place.
$astarion We have to be quiet.
$astarion We have to get //out.//
He moves quickly down the hallway.
|returnFromPresence>[You feel yourself pulled after him.]{
<script>changeBackground("hallway");</script>
<script>musicLoop(""); </script>
(set: $his_attention_once to true)
}](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?choice)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?leadAway)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?leadAstarion)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?hide)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?away)[(set: $sequence to 21)(go-to: $currentPassage)]
(click: ?returnFromPresence)[
(if: $came_from is "attic")[(set: $sequence to 1)(go-to: "Attic")]
(elseif: $came_from is "rampart")[(set: $sequence to 1)(go-to: "Rampart")]
(else:)[(set: $sequence to 0)(go-to: "Hallway Choice")]
]
(set: $skip_attention to true)
<style>
tw-passage {
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.87), 0 0 1em rgba(0, 0, 0, 0.87), 0 0 0.2em rgba(0, 0, 0, 0.95);
}
</style>
<script>addAchieve("His Presence");</script>
}(if: $sequence is 0)[The window is stained glass and ornate to the point where it's hard to see through it. Astarion is examining it.
$astarion I got out before, didn't I? I must have.
$astarion How did I get out before?
$astarion I think...
$astarion I went up?
<span id="yes" class="energy-link" data-content="Speak: Yes./Speech/2/+1"></span>
<span id="taken" class="energy-link" data-content="Speak: You were taken./Speech/4/+1"></span>
|next>[Don't interrupt.]
](elseif: $sequence is 1)[(if: $just_said is "taken")[$astarion That's ominous.
$astarion But also feels correct.
Astarion has found a corner of the stained window that's transparent enough to see through.
$astarion Taken by something in the sky.
](else:)[$astarion I feel like I remember this.
Astarion has found a corner of the stained window that's transparent enough to see through.
$astarion There was something in the sky.
]
<span id="ship" class="energy-link" data-content="Speak: Ship./Speech/2/+1"></span>
<span id="nautiloid" class="energy-link" data-content="Speak: The Nautiloid./Speech/3/+1"></span>
|next>[Don't interrupt.]{
}](elseif: $sequence is 2)[(if: $just_said is "nautiloid")[$astarion I think you're just making up words now.
$astarion But I also think I can see something in the sky.
He's staring out the window, through the bit of it he's found that's not too stained to see through.
$astarion There's something above the palace.
](elseif: $just_said is "ship")[$astarion A flying ship? I've read stories about those.
$astarion Usually nonsense fantasy.
$astarion But perhaps not in this case.
He's staring out the window, through the bit of it he's found that's not too stained to see through.
$astarion I think there's something in the sky.
$astarion Above the palace.
](else:)[He's staring out the window, through the bit of it he's found that's not too stained to see through.
$astarion I think there's something in the sky.
$astarion Above the palace.
]|next>[Continue]{
}](elseif: $sequence is 3)[$astarion That has to be it? Doesn't it? It has to be.
$astarion The easiest way to get to the roof is from the ramparts.
$astarion We can just climb up from there.
$astarion Come on.
He starts moving quickly. Almost running.
|stairwell>[You feel yourself pulled after him.]
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?stairwell)[(set: $sequence to 0)(go-to: "Stairwell")]
}(if: $sequence is 0)[You are in a broad stairwell.
A man is standing on the top landing. He |exp1>[scans the stairs and doorways near him.](click: ?exp1)[ //He's watching for something.//]
He |exp2>[flexes his hands.](click: ?exp2)[ //Magic sparks between his fingers.//]
The man's name is Leon. Astarion pauses in a shadow at the base of the stairs to look up at him.
<span id="whoAstarion" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
<span id="mage" class="energy-link" data-content="Speak to Astarion: Mage./Speech/2/+1"></span>
|skip>[Wait.]{
(set: $days_known_dream to $day - $astarion_learned_dream)
(set: $days_known_dream to it+1)
(set: $enemyName to "Leon")
(set: $enemyNameText to "Leon")
(set: $enemyHealth to 53)
(set: $enemyMaxHealth to 53)
(set: $foundShimmerStairs to false)
}](elseif: $sequence is 1)[(if: $just_said is "whoAstarion")[$astarion Leon is the newest addition to the 'family.'
$astarion He's a sorcerer. Very capable. Very dangerous. Very good at hunting.
$astarion It rather helps when you can charm people with magic.
|next>[Continue]
](elseif: $just_said is "mage")[$astarion Yes. Leon is a sorcerer.
$astarion Very capable. Very dangerous. Very good at hunting.
$astarion It rather helps when you can charm people with magic.
|next>[Continue]
]{
}](elseif: $sequence is 2)[(if: $astarion_learned_dream < 168)[(set: $sequence to 5)(go-to: $currentPassage)
](else:)[$astarion Leon is about to be a problem.
$astarion He's always scrabbling for the master's approval. He's going to try to turn me in for favor.
$astarion And he's between (if: $astarion_trust > 9)[us](else:)[me] and the only ways out onto the roof.
<span id="murder" class="energy-link" data-content="Speak: Attack./Speech/2/+1"></span>
<span id="talk" class="energy-link" data-content="Speak: Talk?/Speech/2/+1"></span>
<span id="why" class="energy-link" data-content="Speak: Why want favor?/Speech/4/+1"></span>
|next>[Continue]]{
}](elseif: $sequence is 3)[(if: $just_said is "murder")[$astarion Yes, I do think that's going to be necessary.
](elseif: $just_said is "talk")[$astarion No, that won't work. Leon isn't reasonable about things like this.
](elseif: $just_said is "why")[$astarion Leon has a mortal daughter. I don't know the details of the blackmail, but I presume it's something like: as long as he performs well Cazador won't kill her.
$astarion It's all very sad and saccharine.
]$astarion I suppose (if: $astarion_trust > 9)[we're](else:)[I'm] about to get into a fight with a magic user.
$astarion I'm going to try to get the drop on him.
|startFight>[Rolling initiative.]{
}](elseif: $sequence is 4)[
](elseif: $sequence is 5)[Astarion's expression is tense. Slightly confused?
$astarion This isn't right. Something here isn't right.
$astarion The year in the tomb happened early. A long time ago. In my first decades here.
$astarion But Leon. Leon only arrived recently.
<span class='self'>//Astarion has been aware of the dream for $days_known_dream day(if: $days_known_dream is not 1 )[s].//</span>
|next>[He stares up at the figure on the landing.]
](elseif: $sequence is 6)[(if: $astarion_learned_dream <= 153)[<span class='self'>//Attempt to Disbelieve: Full Success//</span>
$astarion Leon shouldn't be here.
As Astarion says this, the tall man on the landing |exp1>[vanishes.] (click: ?exp1)[ //It's as if |exp2>[he never existed.]// (click: ?exp2)[ //He wasn't supposed to exist yet.//]]
|next>[Continue]{
}](else:)[<span class='self'>//Attempt to Disbelieve: Partial Success//</span>
$astarion Something's strange about this.
As Astarion says this, the tall man on the landing |exp1>[flickers.] (click: ?exp1)[ //Like an illusion half-dispelled.//]
<span class='health'>//Leon Lost 10 Health//</span>(set: $enemy_damange to 10)
|skip>[Continue]{
(display: "Check Enemy Death")
<script>playAudio("aa_damage");</script>
}]](elseif: $sequence is 7)[Astarion laughs.
$astarion Well. That solves that.
$astarion I thought that was going to be difficult.
Astarion climbs the stairs and walks across the empty landing.
|ramparts>[You feel yourself pulled after him.]{
<script>addAchieve("Roll To Disbelieve");</script>
(set: $avoidedLeon to true)
}](elseif: $sequence is 8)[Astarion shakes his head, as if dismissing his confusion.
$astarion Whatever. Strange as this is, Leon is about to be a problem.
$astarion He's always scrabbling for the master's approval. He's going to try to turn me in for favor.
$astarion And he's between (if: $astarion_trust > 9)[us](else:)[me] and the only ways out onto the roof.
$astarion I'm going to try to get the drop on him.
|startFight>[Rolling initiative.]{
}](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?startFight)[(set: $sequence to 0)(go-to: "Leon")]
(click: ?ramparts)[(set: $sequence to 0)(go-to: "Ramparts")]
<script>changeBackground("stairwell");</script>
}{
(if: $sequence is 0)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to true)
(set: $practice_link_display to true)
](else:)[
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
]
}
(if: $aureliaState is "cleaning ink")[Aurelia has dropped everything else to concentrate intently on cleaning an ink stain off the desk.
It takes her a while.(if: $astarionReading is false)[(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
Astarion watches her impatiently.]
|waitOffice>[Wait.]
](elseif: $aureliaState is "cleaning paper")[Aurelia has dropped everything else to concentrate intently on reassembling the Szarr Palace ledger.
It takes her a while.(if: $astarionReading is false)[(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
Astarion watches her impatiently.]
|waitOffice>[Wait.]
](elseif: $time is 1 and $sequence is 0)[Aurelia looks up from her work at Astarion.
$aurelia What are you doing here?
$astarion Oh, is the chamberlain's office off limits now? I must not have gotten the memo.
$aurelia Astarion.
$astarion I suppose the news must not have circulated down to crypt.
$astarion That I've been locked in.
$astarion For months.
Aurelia sighs.
<span id="helloAurelia" class="energy-link" data-content="Speak to Aurelia: Hello./Speech/2/+1"></span>
<span id="whoAstarion" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
|waitOffice>[Wait.]{
}](elseif: $time is 1 and $sequence is 1)[(if: $just_said is "helloAurelia")[Aurelia glances towards the space your voice came from. She frowns.
$aurelia I haven't time to talk.
$aurelia But if you intend to make nuisance, you should know that we have ways of exorcising and torturing ghosts.
$aurelia For your own sake--don't attract attention.
|waitOffice>[Continue]
](elseif: $just_said is "whoAstarion")[$astarion Aurelia is my eldest sister.
Astarion murmurs quietly to you.
$astarion She tends to think she knows best.
$astarion It's not the //most// annoying thing in all the realms. But it's close.
|waitOffice>[Continue]
]{
}](elseif: $time is 2 and $sequence is 0)[Aurelia and Astarion are talking.
$aurelia Astarion, this is very foolish.
$astarion Oh yes. Please go on. How I've missed being told exactly how I'm being foolish.
$aurelia You must know this will make things worse. For you and for everyone.
$aurelia You should go back to the tomb.
There's a pause.
$astarion Are we going to have a problem, sister?
(if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> He speaks lightly and his hand is creeping towards his knife.]
(set: $enemyNameText to "Aurelia")(display: "Player Attack")
(if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/+1"></span>
]|waitOffice>[Wait.]
](elseif: $time is 2 and $sequence is 1)[(if: $just_said is "violetStab")[Violet lunges out from behind the desk, where she was hiding.
She doesn't attack Aurelia. She goes for the book on the desk. The ledger Aurelia was writing in.
$aurelia Violet, //no!//
Aurelia grabs for the book, but Violet darts out of reach, around her, and out the door. Aurelia chases after her.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
|next>[Continue]{
(set: $time to 30)
(set: $violetWillStab to false)
}](elseif: $just_said is "attack")[{
(display: "Calculate Weapon Damage")
(set: $enemyName to "Aurelia")
(set: $enemyHealthDisplay to true)
(set: $enemyHealth to 52)
(set: $enemyMaxHealth to 52)
}You lash out at Aurelia.
<span class='health'>//Aurelia Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)
She curses in an infernal language and gestures violently towards you. You are suddenly surrounded by flames.
<span class='energy'>//Lost 4 Energy//</span>(set: $energy_change to -4)(display: "update energy silent")
The sounds of violence echo loudly through the quiet halls.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
|next>[Continue]{
(display: "Check Enemy Death")
<script>playAudio("aa_damage");</script>
}]](elseif: $time is 2 and $sequence is 2)[(if: $astarion_trust < 6)[Astarion watches the exchange but doesn't seem motivated to participate.
](else:)[Astarion darts forward and stabs Aurelia.
<span class='health'>//Aurelia Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]She curses again, grabs the ledger off the desk, and runs out of the room.(if: $astarion_trust > 5)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]
|next>[Continue]{
(display: "Check Enemy Death")
<script>playAudio("aa_damage");</script>
(set: $time to 31)
}](elseif: $time is 3)[Aurelia and Astarion are talking.
$aurelia It's not my place to tell you how to behave.
(if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> She sounds very frustrated by this, but she's trying to pretend she's not.]
$aurelia But you should be wary of Leon. He's losing to Petras right now and desperate to impress the master.
$astarion Good to know.
(if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> Astarion puts his knife away.]
|waitOffice>[Wait.]
](elseif: $time is 4)[Aurelia has turned back to the desk and the ledger.
$astarion I have a question for you.
$aurelia I'm very busy, Astarion.
$astarion It will only take a moment.
$aurelia That moment will have to wait until I am done getting the palace under budget.
Astarion makes a frustrated noise. Aurelia ignores him.
|waitOffice>[Wait.]
](elseif: $time is 5 and $sequence is 0)[Aurelia is working. (if: $astarionReading is true)[Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>(set: $draw_attention_blocked to "blocked")]](else:)[Astarion is waiting for her to finish.]
(display: "Office Requests"){
}|waitOffice>[Wait.]
](elseif: $time is 6)[(if: $aureliaState is "being helped")[Astarion approaches the desk.
$astarion Do you want help?
Aurelia looks up at him with narrow eyes.
$aurelia What do you mean? What do you want?
$astarion I want you to answer my question. Which means I want you to finish this faster. Which means: Do you want help?
Aurelia continues to examine him suspiciously. Astarion throws his hands up.
$astarion Forget I asked.
$aurelia Wait. Yes. Fine.
|waitOffice>[Wait.]
](else:)[Aurelia is working. (if: $astarionReading is true)[Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Astarion is waiting for her to finish.
This feels like it's taking a while.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]]
(display: "Office Requests"){
}|waitOffice>[Wait.]
]{
}](elseif: $time is 7)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.
Astarion is reading over the expense summary of the ledger. Aurelia is watching him out of the corner of her eye, as if she suspects he might be about to somehow damage it.
$aurelia I must find something to cut. Something he won't notice.
$astarion You could fire all the servants.
$aurelia We don't pay the servants. They are petitioners seeking the master's dark gift.
$astarion And they are hideously creepy about it.
$aurelia That's not pertinent. Letting them go wouldn't help the budget.
(if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 3</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> You get the sense she agrees with him, but doesn't want to admit it.]
|waitOffice>[Wait.]
](else:)[(if: $astarionReading is true)[Aurelia is working. Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[$astarion I really just need to...
$aurelia Be patient, Astarion.
$aurelia For once in your existence.]
(display: "Office Requests"){
}|waitOffice>[Wait.]
]](elseif: $time is 8)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.
$astarion Gods, we go through a lot of alcohol, don't we?
$astarion Why are we wasting money on Tyche Pink?
$aurelia Is it not a good wine?
$astarion Get some Ithbank instead. It's cheaper and no one is going to be able to tell the difference.
$aurelia Are you sure?
$astarion Yes. And we should stop ordering Blackstaff. It's expensive because they import it from Waterdeep and it's not any better than the local stuff.
|waitOffice>[Wait.]
](else:)[Aurelia is working. (if: $astarionReading is true)[Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Astarion is waiting for her to finish.]
(display: "Office Requests"){
}|waitOffice>[Wait.]
]](elseif: $time is 9)[(if: $aureliaState is "being helped")[Aurelia adjusts the ledger.
$aurelia That's enough. That's actually more than enough.
She looks at Astarion uncomfortably.
$aurelia Thank you.
Astarion shrugs uncomfortably.
$astarion Fine.
|waitOffice>[Wait.]
](else:)[Aurelia is working. (if: $astarionReading is true)[Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Astarion is waiting for her to finish.
This feels like it's taking forever.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]]
(display: "Office Requests"){
}|waitOffice>[Wait.]
]](elseif: $time is 10)[Aurelia concludes her work. She puts away the quill, inkpot, and ledger. (if: $astarionReading is true and $aureliaState is not "being helped" and $aureliaState is not "talking kind")[She turns to address Astarion, but notices that he is engrossed in reading a book.(if: $timeReached < $time)[(set: $aureliaState to "gone")]
She watches him for a little while.
Then she quietly leaves without distrubing him.
|waitOffice>[Wait.]
](else:)[
$aurelia What did you need to talk to me about?
$astarion I need to find a place in this house that feels like freedom.
Astarion speaks quickly, as if heading off another budget appearing.
$astarion Can you think of one?
|waitOffice>[Wait.]]{
(if: $timeReached < $time)[
(set: $objects_taken to it+(a: "quill"))
(set: $objects_taken to it+(a: "inkpot"))
(set: $objects_taken to it+(a: "szarr palace ledger"))
(if: $aureliaState is "being helped")[(set: $aureliaState to "talking kind")](elseif: $aureliaState is not "gone")[(set: $aureliaState to "talking")]]
}](elseif: $time is 11)[(if: $aureliaState is "gone")[Astarion looks up at the sound of the door closing. He crosses the room and opens it, but the hall outside is already empty. Aurelia moved on quickly.
$astarion Damn.
$astarion Though, I actually think the book was more useful than she would have been.
$astarion Well. Onward.
He leaves the office.
|escapeFoyer>[You feel yourself pulled after him.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](else:)[Aurelia shakes her head.
$aurelia Your question is wrongheaded.
$aurelia Freedom is not a place that can be found by searching.
$aurelia Freedom is //knowing// your place, and accepting it.
//<span class="escape">Escape +0</span>//
Astarion stares at her for a moment.
$astarion That's a //terrible// answer.
|waitOffice>[Wait.]]{
}](elseif: $time is 12)[(if: $aureliaState is "talking kind")[Aurelia and Astarion are arguing.
$aurelia It's the answer we have. When you resist it you just make things harder.
$astarion That's not true.
$aurelia It is. You're...
Aurelia visibly stops herself from saying what she's about to say. When she speaks again her voice is surprisingly gentle.
$aurelia I know he's very harsh with you.
$aurelia Perhaps, sometimes, harsher than he is with the rest of us.
Astarion is watching her warily, as if this is very strange and he doesn't in any way trust it.
|waitOffice>[Wait.]
](else:)[Aurelia and Astarion are arguing.
$aurelia It's the answer we have. When you resist it you just make things harder.
$astarion That's not true.
$aurelia It is. You're constantly making trouble.
$astarion I don't //do// anything.
$aurelia You clearly do. If you just...
$astarion He just likes hearing me //scream.//
|waitOffice>[Wait.]
]{
(set: $draw_attention_blocked to "blocked")
}](elseif: $time is 13 and $sequence is 0)[(if: $aureliaState is "talking kind" or $aureliaState is "gone kind")[Aurelia and Astarion are talking.(if: $timeReached < $time)[(set: $aureliaState to "gone kind")]
Aurelia steps closer to Astarion. She touches his shoulder. It's a motion that's trying to be kind. (if: $tookFangOffice is not true)[However, there is a long fang still embedded in Aurelia's chest, and as she moves closer, the sharp edge of it digs in to Astarion.(if: $timeReached < $time)[
<span class='health'>//Astarion Lost 3 Health//</span>(set: $health_change to -3)(display: "update health silent")]]
$aurelia But sometimes you drive him to it.
$aurelia When you tried to run, I thought he was going to kill you.
$aurelia Please listen to me. You should return to the tomb. Before he notices you're out.
Astarion doesn't say anything. Aurelia shrugs helplessly, like she doesn't know what else to do. Then she turns and leaves.(if: $tookFangOffice is not true)[
As she does, the fang shifts, caught on something inside of Astarion. It can't find as much purchase inside of him as it had inside of Aurelia, so it falls to the floor.
They both ignore it. It's something they can't see.]
(if: $tookFangOffice is not true)[|skip>[Take the fang.]
]<span id="touch" class="energy-link" data-content="Touch Astarion`s hand./Touch/1/2"></span>
|waitOffice>[Wait.]
](else:)[Aurelia and Astarion are arguing.(if: $timeReached < $time)[(set: $aureliaState to "gone")]
$aurelia As if you're the only one screaming. As if nothing's your fault. You child.
$aurelia Go back to your tomb, Astarion. You were a fool for leaving.
She turns around and stalks out of the room.
Astarion stares after her.
(if: $sight < 2)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 2]`</span> He's shaking. His hand is clenching and unclenching on the hilt of his knife.]
<span id="calm" class="energy-link" data-content="Speak: Calm./Speech/2/+1"></span>
<span id="fuck" class="energy-link" data-content="Speak: Fuck her./Speech/3/+1"></span>
<span id="right" class="energy-link" data-content="Speak: She`s right./Speech/3/+1"></span>
<span id="quiet" class="energy-link" data-content="Speak: No noise./Speech/3/+1"></span>
<span id="touch" class="energy-link" data-content="Touch Astarion`s hand./Touch/1/+1"></span>
|waitOffice>[Wait.]]{
(set: $draw_attention_blocked to "blocked")
(set: $just_said to "nothing")
}](elseif: $time is 13 and $sequence is 1)[(if: $just_said is "calm" and $astarion_trust < 15)[(set: $time to it+1)(go-to: $currentPassage)
](elseif: $just_said is "touch" and $astarion_trust < 10)[(set: $time to it+1)(go-to: $currentPassage)
](elseif: $just_said is "fuck" and $astarion_trust < 10)[(set: $time to it+1)(go-to: $currentPassage)
](elseif: $just_said is "quiet" and $astarion_trust < 7)[(set: $time to it+1)(go-to: $currentPassage)
](elseif: $just_said is "right")[(set: $time to it+1)(go-to: $currentPassage)
](else:)[Astarion walks over to the desk and wraps his fingers around the neck of the wine glass. Your (if: $just_said is "touch")[touch](else:)[words] catch him just before it looks like he's about to throw it.
He stands there for a moment, gripping the glass so hard you're worried it might shatter.
(if: $just_said is "fuck")[$astarion Well put.](else:)[$astarion Fuck her.]
$astarion (if: $astarion_trust > 9)[We'll](else:)[I'll] find someone else.
He leaves the office.
|escapeFoyer>[You feel yourself pulled after him.]
]{
}](elseif: $time is 13 and $sequence is 2)[(if: $just_said is "touch" and $astarion_trust < 10)[Astarion ignores you. Or doesn't notice you.
It's hard to tell the difference right now.
He seems very distant. Like he's not entirely present in the room.
|waitOffice>[Continue]
](elseif: $just_said is "touch" and $astarion_trust > 15)[Astarion's hand moves and tries to close around yours.
It doesn't quite work, since you're intangible.
|waitOffice>[Continue]
](elseif: $just_said is "touch")[Astarion's hand flexes when you touch it.
He makes a vague noise of acknowledgment, still looking after Aurelia.
He seems very distant. Like he's not entirely present in the room.
|waitOffice>[Continue]
](elseif: $just_said is "nothing")[You pick up the fang off the ground.
(display: "Take Fang")(set: $tookFangOffice to true)
|waitOffice>[Continue]
]{
}](elseif: $time is 14)[(if: $aureliaState is "gone kind")[Astarion shakes his head.
$astarion No.
$astarion No. Not that.
$astarion (if: $astarion_trust > 9)[We'll](else:)[I'll] find...something.
He leave the office.
|escapeFoyer>[You feel yourself pulled after him.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](else:)[(if: $just_said is "nothing" or $just_said is "right")[Astarion makes a guttural noise of incoherent rage.](else:)[Astarion doesn't seem to notice you. You did the wrong thing or he just doesn't care about a shadow right now.]
(if: $just_said is "right")[He grabs the bottle of wine off of the desk and hurls it directly at you.
It passes harmlessly through you. It shatters against the wall. Startlingly loud in the silent room.<script>updateTrust(-2);</script>](else:)[He grabs the bottle of wine off of the desk and hurls it against the wall.
It shatters. Startlingly loud in the silent room.]
(if: $timeReached < $time)[//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
]Shards of glass tumble down onto the floor.
|waitOffice>[Continue]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}]](elseif: $time is 15)[(if: $just_said is not "right")[$astarion Let's get out of here.
He leaves the office.](else:)[Astarion leaves the office.]
|escapeFoyer>[You feel yourself pulled after him.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](elseif: $time is 16)[
](elseif: $time is 17)[
](elseif: $time is 20)[
](elseif: $time is 21)[
](elseif: $time is 22)[
](elseif: $time is 30)[Astarion watches them go. He had his knife half-drawn. He puts it away.
$astarion I don't know that Aurelia would have actually turned me in.
$astarion She tends to scold more than act.
He glances around the room.
$astarion I suppose there's no point in staying here.
$astarion (if: $astarion_trust > 9)[We'll](else:)[I'll] try to find someone else.
He leave the office.
|escapeFoyer>[You feel yourself pulled after him.]{
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}](elseif: $time is 31)[Astarion watches her go.
$astarion I don't know that she would have actually turned me in.
$astarion She tends to scold more than act.
He glances around the room.
$astarion I suppose there's no point in staying here.
$astarion (if: $astarion_trust > 9)[We'll](else:)[I'll] try to find someone else.
He leave the office.
|escapeFoyer>[You feel yourself pulled after him.]{
(set: $enemyHealthDisplay to false)
(set: $astarion_link_display to false)
(set: $tomb_link_display to false)
(set: $practice_link_display to false)
}]{
(set: $timeReached to $time)
(click: ?waitOffice)[
(display: "Time Pass Office")
(set: $sequence to 0)
(goto: $currentPassage)
]
<script>changeBackground("office");</script>
}(if: $aureliaState is "cleaning ink")[Aurelia is cleaning an ink stain off the desk. It takes her a while.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]{
}](elseif: $aureliaState is "cleaning paper")[Aurelia is reassembling the Szarr Palace ledger. It takes her a while.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]{
}](elseif: $time is 1)[Aurelia and Astarion are talking.{
}](elseif: $time is 2)[Aurelia and Astarion are talking.{
}](elseif: $time is 3)[Aurelia and Astarion are talking.{
}](elseif: $time is 4)[Aurelia and Astarion are talking.{
}](elseif: $time is 5)[(if: $astarionReading is true)[Aurelia is working. Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Aurelia is working. Astarion is waiting for her to finish.]{
}](elseif: $time is 6)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.{
}](else:)[(if: $astarionReading is true)[Aurelia is working. Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Aurelia is working. Astarion is waiting for her to finish. This feels like it's taking a while.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]]{
}]](elseif: $time is 7)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.{
}](else:)[(if: $astarionReading is true)[Aurelia is working. Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Aurelia is working. Astarion is trying to interrupt her.]]{
}](elseif: $time is 8)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.{
}](else:)[Aurelia is working. (if: $astarionReading is true)[Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Astarion is waiting for her to finish.]]{
}](elseif: $time is 9)[(if: $aureliaState is "being helped")[Aurelia is working. Astarion is helping her.{
}](else:)[(if: $astarionReading is true)[Aurelia is working. Astarion is reading 'The Seven Companions'.(set: $draw_attention_blocked to "blocked")(if: $timeReached < $time)[
//<span class="escape">Escape +1</span>//<script>updateEscape(1);</script>]](else:)[Aurelia is working. Astarion is waiting for her to finish. This feels like it's taking forever.(if: $timeReached < $time)[
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>]]]{
}](elseif: $time is 10)[Aurelia concludes her work.(if: $astarionReading is true and $aureliaState is not "being helped" and $aureliaState is not "talking kind")[ She sees that Astarion is reading and quietly leaves without distrubing him.(set: $aureliaState to "gone")](else:)[ Astarion asks her a question.]{
(if: $timeReached < $time)[
(set: $objects_taken to it+(a: "quill"))
(set: $objects_taken to it+(a: "inkpot"))
(set: $objects_taken to it+(a: "szarr palace ledger"))
(if: $aureliaState is "being helped")[(set: $aureliaState to "talking kind")](elseif: $aureliaState is not "gone")[(set: $aureliaState to "talking")]
]
}](elseif: $time is 11)[(if: $aureliaState is "gone")[(set: $sequence to 0)(go-to: "Office Watch")](else:)[Aurelia answers Astarion's question.(if: $timeReached < $time)[
//<span class="escape">Escape +0</span>//]]{
}](elseif: $time is 12)[Aurelia and Astarion are arguing.{
(set: $draw_attention_blocked to "blocked")
}](elseif: $time is 13)[(if: $aureliaState is "talking kind" or $aureliaState is "gone kind")[Aurelia and Astarion are talking. (if: $timeReached < $time)[(set: $aureliaState to "gone kind")](if: $timeReached < $time and $tookFangOffice is not true)[
<span class='health'>//Astarion Lost 3 Health//</span>(set: $health_change to -3)(display: "update health silent")
]Aurelia leaves.](else:)[Aurelia and Astarion are arguing. Aurelia leaves.(if: $timeReached < $time)[(set: $aureliaState to "gone")]]{
(set: $draw_attention_blocked to "blocked")
(set: $just_said to "nothing")
}](elseif: $time is 14)[(set: $sequence to 0)(go-to: "Office Watch")
](elseif: $time is 15)[(set: $sequence to 0)(go-to: "Office Watch")
](elseif: $time is 16)[
](elseif: $time is 17)[
](elseif: $time is 20)[
](elseif: $time is 21)[
](elseif: $time is 22)[
](elseif: $time is 30)[
](elseif: $time is 31)[
]{
(set: $timeReached to $time)
<script>changeBackground("office");</script>
}(if: $sequence is 0)[$sigh He knew it was you.
$sigh In the last moments, I made sure that he knew it was you.
(if: $astarion_trust is 20)[|darling>[Continue]](else:)[|next>[Continue]]{
<script>changeBackground("sigh");</script>
<script>addAchieve("This Is How I Save The Realm");</script>
}](elseif: $sequence is 1)[$sigh That was delectable.
$sigh That was a feast.
$sigh That was a gift.
$sigh I will not forget this.
|next>[Continue]{
}](elseif: $sequence is 2)[$sigh Now I am going to devour a god. As I promised you.
$sigh I will not touch your dreams again. And I will not touch your other companions.
$sigh You are safe, my $sigh_pet_name.
$sigh You should go tell your friends the good news.
|next>[Wake up.]{
}](elseif: $sequence is 3)[You wake up in the forest.
Most of your companions are here.
You've saved Baldur's Gate.
|goToTitle>[Return to title.]{
(set: $fg_tree_count to 1)
(set: $treePosition1 to 0.1)
(set: $branches1 to 170)
(set: $treePosition2 to 0.9)
(set: $branches2 to 190)
(set: $treePosition3 to 0)
(set: $drawAction to "trees")
(display: "decorate campsite")
<style> body{ background: #040c01; } </style>
<script>changeBackground("");</script>
(set: $energyDisplay to false)
}](elseif: $sequence is 4)[$sigh He trusted you entirely.
$sigh And when he realized what you did--it was perfect.
$sigh I have never tasted suffering so perfect.
$sigh That was a gift.
|next>[Continue]
](elseif: $sequence is 5)[$sigh I think I am in love with you.
$sigh I don't want to eat you.
$sigh I want to help you do more terrible, perfect things.
$sigh I think that is what love is.
|next>[Continue]
](elseif: $sequence is 6)[$sigh I am going to go devour a god.
$sigh As I promised you.
$sigh But when I am finished, I will return.
$sigh And we can do more terrible, perfect things together.
|next>[Continue]
](elseif: $sequence is 7)[(if: $class is "warlock")[$sigh You //will// have to say goodbye to another one of your associates, I am afraid.
$sigh That thing that gives you your powers. I am afraid I am not good at sharing.
$sigh Perhaps I will assist with that. I will see how powerful I feel after I have eaten a god.
$sigh Perhaps I will see what your patron tastes like.
|next>[Continue]{
}](else:)[$sigh What is the word? There is a word to be used here.
$sigh Ah, yes.
$sigh Darling.
$sigh My darling.
|next>[Continue]{
}]{
<script>addAchieve("My Nightmare");</script>
(if: $class is "paladin")[<script>addAchieve("My Candle");</script>]
(if: $class is "warlock")[<script>addAchieve("New Patron");</script>]
}](elseif: $sequence is 8)[|goToTitle>[Return to title.]
(set: $energyDisplay to false)
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?darling)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[Astarion glances towards you.
$astarion What do you need help with?
<span id="helpAurelia" class="energy-link" data-content="Speak: Aurelia./Speech/2/+1"></span>
|returnWatch>[Finish talking.]{
}](elseif: $sequence is 1)[$astarion Help her?
$astarion Why in the world would I do that?
<span id="nice" class="energy-link" data-content="Speak: Nice./Speech/2/+1"></span>
<span id="faster" class="energy-link" data-content="Speak: Done faster./Speech/2/+1"></span>
<span id="paperwork" class="energy-link" data-content="Speak: Paperwork is fun./Speech/2/+1"></span>
|returnWatch>[Finish talking.]{
(set: $time to it+1)
(set: $astarion_act3_talked to it+"officeHelp")
}](elseif: $sequence is 2)[(if: $just_said is "nice")[$astarion Nice? I should help her because it would be //nice?//
$astarion I'm not certain how you've missed this over the course of our time together.
$astarion I'm not a nice person.
|returnWatch>[Finish talking.]
](elseif: $just_said is "paperwork")[Astarion gives you an odd look.
$astarion Sometimes it occurs to me just how little I actually know about you.
$astarion No. It is dull and best left to pedants like Aurelia.
|returnWatch>[Finish talking.]
](elseif: $just_said is "faster")[Astarion makes a reluctant noise.
$astarion I suppose. But she's not going to want my help.
$astarion I do one thing to contribute to the household and it's not balancing budgets.
(if: $sight < 4)[//He mutters something too soft to hear. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 4]`</span> He mutters under his breath:
$astarion I'd probably just muck it up.]
<span id="offer" class="energy-link" data-content="Speak: Offer?/Speech/2/4"></span>
<span id="what" class="energy-link" data-content="Speak: What you do?/Speech/4/3"></span>
|returnWatch>[Finish talking.]
]{
}](elseif: $sequence is 3)[Astarion's shoulders hunch.
(if: $astarion_mentioned_seduction is true)[$astarion I told you in the foyer.
$astarion I don't want to talk about it anymore.
](else:)[$astarion I don't want to talk about it.
]
<span id="offer" class="energy-link" data-content="Speak: Offer?/Speech/2/4"></span>
|returnWatch>[Finish talking.]
](elseif: $sequence is 4)[$astarion Fine.
Astarion stalks irritably over to Aurelia.
|returnWatch>[Continue]{
(set: $aureliaState to "being helped")
(set: $time to 6)
}](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[Astarion glances towards you.
$astarion Hm? Distract?
<span id="helpAurelia" class="energy-link" data-content="Speak: Aurelia./Speech/2/+1"></span>
|returnWatch>[Finish talking.]{
}](elseif: $sequence is 11)[Astarion smiles unkindly.
$astarion Why yes, I can certainly do that.
|next>[Continue]{
(set: $time to it+1)
(set: $astarion_act3_talked to it+"officeDistract")
}](elseif: $sequence is 12)[Astarion sweeps over to the desk. Aurelia glances sidelong at him.
$aurelia I'm working, Astarion.
$astarion Of course you are. My most industrious sister.
$astarion What a pretty inkpot. That's Amn crystal, isn't it? The chamberlain wastes gold in the most inventive ways.
$aurelia I need that. Don't touch it.
|next>[Continue]
](elseif: $sequence is 13)[Aurelia moves to stop Astarion from picking up the inkpot. The exchange almost overturns it and she scrambles to keep ink from spilling.
As she does, Astarion sweeps a hand casually over the desk, knocking the ledger and its accompanying scrollwork onto the floor.
$astarion Whoops.
Aurelia glares at him.
$aurelia You did that //purposefully.//
$astarion Sister, I'm hurt. It was an honest mistake.
$aurelia You haven't done an honest thing in a decade.
$astarion Is that so? What happened a decade ago?
$aurelia It's just a...just stop. Just get away from the desk. I need to finish this.
Astarion makes a show of backing away from the desk. Aurelia kneels down to pick up the ledger and scattered scrolls.
|returnWatch>[Continue]{
(set: $aureliaState to "cleaning paper")
(set: $time to 6)
}](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?returnWatch)[(set: $sequence to 0)(go-to: "Office Watch")]
}{
(if: $aureliaState is "cleaning ink")[(set: $aureliaState to "working")(set: $timeReached to it-1)]
(elseif: $aureliaState is "cleaning paper")[(set: $aureliaState to "working")(set: $timeReached to it-1)]
(else:)[(set: $time to it+1)]
(if: $time > 4 and $time < 8 and $astarionReading is true)[(set: $time to 8)]
}(if: $astarionReading is false and not ($astarion_act3_talked contains "officeDistract"))[(if: not ($astarion_act3_talked contains "officeHelp"))[(if: $speech < 3)[<span id="help" class="energy-link" data-content="Speak to Astarion: Help?/Speech/2/0/1/passage:Office Discussion"></span>](else:)[<span id="helpHer" class="energy-link" data-content="Speak to Astarion: Help her?/Speech/2/1/1/passage:Office Discussion"></span>]
](if: $speech < 3)[<span id="distract" class="energy-link" data-content="Speak to Astarion: Distract./Speech/2/10/1/passage:Office Discussion"></span>](else:)[<span id="distractHer" class="energy-link" data-content="Speak to Astarion: Distract her./Speech/2/11/1/passage:Office Discussion"></span>]
](if: $sequence is 0)[Astarion stifles a scream and makes a controlled collapse into crouching on the carpet, trying to keep weight off his leg.
(set: $dmg to 8)(display: "Damage Astarion")
What looks like a small bear trap is closed around his leg. It was planted in a gap where someone pulled up a floorboard, then hidden by the carpet.
$yousen Why does the world only clearly exist within thirty feet of you?
$yousen And what is the phenomenon on the roof?
|next>[Continue]{
(set: $trapwork to 0)
(set: $yousenState to "neutral")
(set: $trapShown to false)
}](elseif: $sequence is 1)[You are in a richly appointed hallway.
Astarion is caught in a metal trap.
A gnome is standing a few yards away. He is watching Astarion with cold curiosity. His name is Yousen.<script>addAchieve("The Trapmaker");</script>
<span id="examine" class="energy-link" data-content="Examine Yousen./Sight/0/+1/0"></span>
(set: $enemyNameText to "Yousen")(display: "Player Attack")
<span id="whoAstarion" class="energy-link" data-content="Speak to Astarion: Who?/Speech/2/+1"></span>
<span id="helloYou" class="energy-link" data-content="Speak to Yousen: Hello./Speech/2/+1"></span>
(if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/25"></span>
]|skip>[Wait.]
](elseif: $sequence is 2)[(if: $just_said is "examine")[Yousen is four feet tall. He has pointed ears, gray hair, and a flat expression. As if he is only distantly interested in the world around him, on an academic level.
An elaborate toolkit is strapped to his waist. His hand rests lightly on one of the many decorative vases that line the hall.
](elseif: $just_said is "attack")[You move towards Yousen to attack him, but he's standing just far enough from Astarion that by the time you reach him the world is blurring.
You try to lash out, but can't quite reach him, and when you try you stagger a few steps, pulled back towards the dreamer.
](elseif: $just_said is "whoAstarion")[$astarion That's Yousen.
Astarion hisses between gritted teeth.
$astarion He's a trapmaker. Cazador took him to maintain the secret doors and traps in the palace.
$astarion There's something very wrong with him.
$astarion Also he's an insufferable know-it-all. And a coward.
](elseif: $just_said is "helloYou")[Yousen glances in your direction. He examines the air around you, seeming to note something.
$yousen Interesting.
He looks back at Astarion.
]|next>[Continue]{
}](elseif: $sequence is 3)[$yousen You have neglected to answer my questions.
$astarion I'm a little distracted by my lacerated leg, you deranged anklebiter. What the hells is wrong with you?
$yousen I am extremely confused and desperate.
He speaks in an inflectionless monotone.
$yousen The desperation is only slightly above baseline. The confusion is new.
|next>[Wait.]
](elseif: $sequence is 4)[Astarion has started trying to pull the trap open. Yousen shakes his head.
$yousen I am now escalating to threats. If you disarm that trap or continue to neglect my questions, I am going to break things in this hallway until the master comes.
Yousen puts his hand on a delicate, expensive vase. Astarion stops struggling with the trap.
$astarion Don't.
$yousen I would prefer not to. I would prefer that you cooperate.
$astarion What do you want?
$yousen Answers to my questions. Have how forgotten them? Your poor memory is extremely tiresome.
<span id="answer" class="energy-link" data-content="Speak to Astarion: Answer./Speech/2/+1/1"></span>
<span id="dont" class="energy-link" data-content="Speak to Astarion: Don`t./Speech/2/+1/1"></span>
(display: "Trapwork")|next>[Wait.]
](elseif: $sequence is 5)[(if: $just_said is "answer")[$astarion Yes. I know. I am.
Astarion mutters that to you, then addresses Yousen.
](elseif: $just_said is "dont")[$astarion I have to say something. He's mad enough to do what he's threatening.
Astarion mutters that to you, then addresses Yousen.
](elseif: $just_said is "trap")[(display: "Trap Result")
](else:)[Astarion grinds his teeth together. There's a soft 'clack', which is probably his fangs hitting molars. But when he speaks his voice is mostly level.
]$astarion I don't understand the questions. What do you mean the world only 'clearly exists' near me? What's on the roof?
$yousen You're unaware of it. Interesting.
$yousen The world becomes increasingly less distinct the further away I move from you or a strange object floating above this building. To the point where Baldur's Gate itself is amorphous mist.
$yousen I was under the impression it was location based--that there was something particular about the roof and the crypt-dungeon under the kennel. Then you emerged and I discovered that the effect follows you.
$yousen A summary--something is fundamentally wrong with the world and it is related to you. I need to understand. Contribute to my understanding, or I will start breaking things.
To highlight his point Yousen tips a decorative vase almost over, so that it hangs tenuously on its edge.
<span id="lie" class="energy-link" data-content="Speak to Astarion: Lie./Speech/2/+1/1"></span>
<span id="truth" class="energy-link" data-content="Speak to Astarion: Truth?/Speech/2/+1/1"></span>
(display: "Trapwork")|next>[Wait.]{
(set: $just_said to "nothing")
}](elseif: $sequence is 6)[(if: $just_said is "truth" and $astarion_trust > 15)[(set: $sequence to 15)(go-to: $currentPassage)
](elseif: $just_said is "trap")[(display: "Trap Result")
](elseif: $just_said is "lie")[Astarion nods. That's an approach he fully agrees with.
](elseif: $just_said is "truth")[Astarion glances towards you, seeming to consider your suggestion for a moment. But then he shakes his head very slightly and does what comes naturally--lying.
]$astarion Yousen, I'm flattered that someone as intelligent as you thinks I might have the answer to this mystery.
(if: $sight < 4)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 4]`</span> Yousen's flat expression flickers for just a moment. He almost smiles. He likes being called intelligent.]
$astarion But just because I'm caught up in the middle of something doesn't mean I understand it.
$yousen Your understanding is chronically limited.
$astarion It is. Isn't it.
$yousen You shouldn't feel too poorly about that. Everyone here is an idiot except for me.
$astarion So you've mentioned.
(if: $sight < 3)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 4</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 3]`</span> Astarion is doing a pretty good job of concealing how much he despises this gnome.]
(display: "Trapwork")|next>[Wait.]
](elseif: $sequence is 7)[(if: $just_said is "trap")[(display: "Trap Result")
]$astarion Someone as smart as you must have a theory about what's going on?
(if: $sight < 2)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//](else:)[<span class="softEmph">`[Unlocked: Sight 2]`</span> Astarion's flattery is palpably insincere. Yousen doesn't seem to care.]
$yousen The effect surrounding you is clearly linked to the phenomenon above the roof.
$astarion You mentioned that before. What is on the roof exactly?
$yousen Above the roof. There is something in the sky. It is difficult to describe.
$yousen You should go there. Perhaps the situation will resolve itself.
(display: "Trapwork")|next>[Wait.]
](elseif: $sequence is 8)[(if: $just_said is "trap")[(display: "Trap Result")
]$astarion That would be easier to do if I had use of both of my legs.
$yousen I'm not coming near you. You're unstable and violent.
$astarion //I'm// unstable? You're the one setting bear traps under carpets.
$yousen That isn't a bear trap. If it were a bear trap you wouldn't have a leg.
$yousen I am leaving now.(if: $trapwork >= 4)[
$astarion Are you now?
|attackYousen>[Astarion lunges at him.]](else:)[
|next>[Yousen leaves.]
]](elseif: $sequence is 9)[Astarion starts working at dismantling the trap around his leg.(if: $astarion_inventory contains 'toolkit' and $trapwork > 0)[ Between his toolkit and your efforts, it takes barely any time for him to get free.
](elseif: $astarion_inventory contains 'toolkit' and $trapwork is 0)[ He makes quick work of it with his toolkit.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>
](elseif: $trapwork > 5)[ You've loosened it enough that it takes him barely any time to get free.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>
](elseif: $trapwork > 0)[ You've loosened it a bit, which makes it easier for him to get free.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
](else:)[ He's using the improvised lockpicks he scavenged from torture equipment, so it takes him a little while.
//<span class="attention">His Attention +3</span>//<script>updateAttention(3);</script>
]
|next>[Continue]
](elseif: $sequence is 10)[$astarion Miserable little creature. But he told us something, didn't he?
//<span class="escape">Escape +(print: $escape_max-$escape)</span>//(set: $escape to $escape_max)<script>playAudio("aa_tap2");</script>
$astarion There's something in the sky, he said. That has to be it? Doesn't it? The place we're looking for.
$astarion The easiest way to get to the roof is from the ramparts.
$astarion We can just climb up from there. Come on.
He starts moving quickly. Almost running.
|stairwell>[You feel yourself pulled after him.]{
}](elseif: $sequence is 11)[
](elseif: $sequence is 12)[{
(display: "Calculate Weapon Damage")
(set: $enemyName to "Yousen")
(set: $enemyHealthDisplay to true)
(set: $enemyHealth to 30)
(set: $enemyMaxHealth to 30)
}Astarion darts across the hall and stabs Yousen.
<span class='health'>//Yousen Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
Yousen makes a shrill noise. Half-gasp, half-scream. He scrambles away, leaving himself vulnerable. Astarion stabs him again, catching him in the shoulder.
<span class='health'>//Yousen Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
Yousen dashes away down the hall and vanishes into a shadow.
|next>[Continue]{
(display: "Check Enemy Death")
<script>playAudio("aa_damage");</script>
(set: $yousenState to "stabbed")
(set: $violetWillStab to false)
}](elseif: $sequence is 13)[$astarion We won't see him again. He's pathetic when it comes to pain.
$astarion What a miserable little creature. But he told us something, didn't he?
//<span class="escape">Escape +(print: $escape_max-$escape)</span>//(set: $escape to $escape_max)<script>playAudio("aa_tap2");</script>
$astarion There's something in the sky, he said. That has to be it? Doesn't it? The place we're looking for.
$astarion The easiest way to get to the roof is from the ramparts.
$astarion We can just climb up from there. Come on.
He starts moving quickly. Almost running.
|stairwell>[You feel yourself pulled after him.]{
(set: $enemyHealthDisplay to false)
}](elseif: $sequence is 14)[
](elseif: $sequence is 15)[Astarion hesitates. He looks deeply uncertain about the idea of telling the truth, but in the end decides to trust your suggestion.
$astarion This is a dream.
He examines Yousen, waiting as if for derision or pushback. Yousen just watches him fixedly.
$astarion My dream. I suppose that's why things become...indistinct you called it, away from me.
$yousen I see. Interesting.
$astarion Really? You're just accepting that?
$yousen There is no more sensible explanation. And it fits with everything I've observed.
(display: "Trapwork")|next>[Wait.]{
(set: $yousenState to "dream aware")
}](elseif: $sequence is 16)[(if: $just_said is "trap")[(display: "Trap Result")
]$yousen If this is your dream, then what am I?
$astarion I don't know. Some dream thing? A short and extremely irritating memory.
$yousen When you wake up, what will happen to me?
$astarion I don't know.
Yousen considers this.
(display: "Trapwork")|next>[Wait.]{
}](elseif: $sequence is 17)[(if: $just_said is "trap")[(display: "Trap Result")
]$yousen I think it may be in my best interest for you to remain asleep.
$yousen Everything seemed more stable when you were in the tomb.
(if: $trapwork >= 4)[$yousen I think I will go...
|attackYousen>[Astarion lunges at him.]
](else:)[$yousen I think I will go speak to Leon.
He turns around and walks away down the hall.(set: $yousenSpokeLeon to true)
|dismantleTrap>[Continue]
]{
}](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
](elseif: $sequence is 25)[Yousen flinches when you say that name. He turns and runs, already halfway down the hall before Violet reveals herself. Violet cackles as she steps out from shadow. She calls after him.
$violet I made a promise to a ghost!
$violet I'm going to //hurt// you, you runt.
She takes off running after him.
Astarion starts working at dismantling the trap around his leg.(if: $astarion_inventory contains 'toolkit' and $trapwork is 0)[ He makes quick work of it with his toolkit.
](else:)[ He's using the improvised lockpicks he scavenged from torture equipment, so it takes him a little while.
//<span class="attention">His Attention +1</span>//<script>updateAttention(1);</script>
]
|next>[Continue]{
}](elseif: $sequence is 26)[$astarion Yousen said something. One of his questions.
$astarion He said there was something on the roof? That could be what (if: $astarion_trust > 9)[we're](else:)[I'm] looking for.
//<span class="escape">Escape +(print: $escape_max-$escape)</span>//(set: $escape to $escape_max)<script>playAudio("aa_tap2");</script>
$astarion The easiest way to get to the roof is from the ramparts.
$astarion We can just climb up from there. Come on.
He starts moving quickly.
|stairwell>[You feel yourself pulled after him.]{
}](elseif: $sequence is 27)[
](elseif: $sequence is 28)[
]{
(click: ?dismantleTrap)[(set: $sequence to 9)(go-to: $currentPassage)]
(click: ?attackYousen)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?stairwell)[(set: $sequence to 0)(go-to: "Stairwell")]
}(if: $touch >= 3 or $trapShown is not true)[(if: $trapwork >= 4)[|gray1>[Continue to work on the trap.](click: ?gray1)[ //The trap is open.//]
](elseif: $trapwork is 0)[<span id="trap" class="energy-link" data-content="Try to open the trap./Touch/3/+1/1"></span>
](else:)[<span id="trap" class="energy-link" data-content="Continue to work on the trap./Touch/3/+1/1"></span>
]](set: $trapShown to true)(if: $just_said is "trap")[{
(set: $endTrapwork to $trapwork)
(set: $endTrapwork to it+1)
(if: $class is "rogue")[(set: $endTrapwork to it+1)]
(if: $player_inventory contains 'toolkit')[(set: $endTrapwork to it+1)]
}(if: $trapwork is 0)[You start to work on opening the trap(if: $class is "rogue")[, putting your expertise as a rogue to good use](elseif: $player_inventory contains 'toolkit')[, using the toolkit you found in the tomb]. Your efforts are less obvious because you're invisible. Yousen doesn't seem to notice.
](elseif: $trapwork is 1)[You keep working on the trap.
](elseif: $endTrapwork < 4)[You keep working on the trap.
](elseif: $endTrapwork >= 4)[You keep working on the trap. It falls open.
Astarion glances briefly down at it and shifts slightly, putting weight on the foot.
]{
(set: $trapwork to $endTrapwork)
(set: $just_said to "nothing")
}](if: $sequence is 0)[{
(set: $round_number to 0)
(set: $healthDisplay to true)
(set: $enemyHealthDisplay to true)
(set: $next_round_text to "Next Round")
(set: $leonDamage to 6)
(set: $astarion_state to "free")
(set: $leon_state to "retreating")
(set: $yousen_in_combat to false)
(set: $violet_in_combat to false)
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
Leon is at the stop of the stairwell, looking for Astarion.(set: $leon_action to "surprised")
Astarion is creeping up the stairwell, about to attack him.(set: $astarion_action to "stab")(if: $foundShimmerStairs is not true)[
<span class="text-shimmer-long">Something gleams</span> near the banister.]
<span id="examine" class="energy-link" data-content="Examine Leon./Sight/0/+1/0"></span>
<span id="hello" class="energy-link" data-content="Speak to Leon: Hello./Speech/2/+1"></span>
(display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 1)[<span class="emph">//Your Turn//</span>
(if: $just_said is "examine")[Leon is a tall, broad shouldered man with long dark hair.
Magic sparks between the fingers of his right hand. In his left hand he's carrying a large, wooden club.
](elseif: $just_said is "hello")[You say hello to Leon. He turns towards you, startled, and then scans the area, newly alert.(set: $leon_action to "aware")
](if: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
He takes a startled step back, and then scans the area.(set: $leon_action to "aware")
](if: $just_said is "push" or $just_said is "touch")[You $just_said Leon. He turns towards you, startled, and then scans the area, newly alert.(set: $leon_action to "aware")
](display: "Player Action Results Leon"){
}<span class="emph">//Astarion's Turn//</span>
(if: $leon_action is "surprised")[Astarion creeps towards Leon and ambushes him. <span class='health'>//Leon Lost $astarion_sneak_damage Health//</span>(set: $enemy_damange to it+$astarion_sneak_damage)
](else:)[Astarion creeps towards Leon, but Leon notices him as he attacks. He uses a club to partially deflect the blow <span class='health'>//Leon Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
](if: $knife_nature is "sussur")[Astarion is wielding a magic knife that creates silence. As it cuts into Leon, smoke swirls from the wound and a palpable quiet settles over the spellcaster.
]<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](if: $knife_nature is "sussur")[Leon staggers back, clapping his hand over the cut on his arm which still leaks strange smoke. He tries to say something. Fails. Cannot speak.(set: $enemy_action to "surrender sussur")
](elseif: $leon_action is "aware")[$leon This isn't personal.
Leon bludgeons Astarion with a club. (set: $dmg to $leonDamage)(display: "Damage Astarion Combat")
](elseif: $leon_action is "surprised")[Leon is surprised and doesn't act.
]
(display: "Round Ends")(display: "Next Round"){
}](elseif: $sequence is 2)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
Leon is casting a spell.(set: $leon_action to "cast web")
(if: $astarion_inventory contains 'scroll of counterspell')[Astarion has pulled out the scroll of counterspell he has.(set: $astarion_action to "counterspell")
](else:)[Astarion is trying to stab Leon.(set: $astarion_action to "stab")](if: $yousenState is "dream aware" and $sight > 4)[
<span class="softEmph">`[Unlocked: Sight 5]`</span> Yousen is hidden in a shadow at the top of the stairs. He's about to attack Astarion.(set: $yousen_action to "stab")(set: $yousen_seen to true)](elseif: $yousenState is "dream aware")[
//Something happens beyond your perception. <span class="softEmph">Requires: Sight 5</span>//(set: $yousen_action to "stab")](if: $foundShimmerStairs is not true)[
<span class="text-shimmer-long">Something gleams</span> near the banister.]
<span id="pleaseStop" class="energy-link" data-content="Speak to Leon: Please stop./Speech/3/+1"></span>
(if: not ($astarion_inventory contains 'scroll of counterspell'))[(if: $player_inventory contains 'scroll of counterspell')[<span id="counterspell" class="energy-link" data-content="Cast Counterspell./Speech/3/+1"></span>](else:)[|gray>[Cast Counterspell.](click: ?gray)[//You don't have anything that would let you do that.//]]
](if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/+1"></span>
](if: $yousenState is "dream aware" and $sight > 4)[(if: $speech >= 4)[<span id="warnAstarionWell" class="energy-link" data-content="Speak to Astarion: Yousen in shadow./Speech/4/+1"></span>](else:)[<span id="warnAstarion" class="energy-link" data-content="Speak to Astarion: Yousen./Speech/2/+1"></span>]
](display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
(set: $violet_action to "nothing")
}](elseif: $sequence is 3)[<span class="emph">//Your Turn//</span>
(if: $just_said is "pleaseStop")[You ask Leon to stop. Leon shakes his head.
$leon I don't have a choice.
](elseif: $just_said is "counterspell")[You cast counterspell, targeting Leon's magic.(set: $leon_action to "fizzle")(set: $player_inventory to it - (a: 'scroll of counterspell'))(set: $enemy_distract_count to it+1)
](if: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
He grunts in pain and some of his attention shifts towards you.
](if: $just_said is "push" or $just_said is "touch")[Leon ignores you. As long as you're not hurting him, he's not going to regard you as a threat.
](if: $just_said is "violetStab")[You say Violet's name. She giggles from a nearby shadow and rolls initiative.(if: $yousenState is "dream aware")[(set: $violet_action to "stab yousen")](else:)[(set: $violet_action to "stab leon")](set: $enemy_distract_count to it+1)(set: $violetWillStab to false)
](if: $just_said is "warnAstarionWell")[You warn Astarion about Yousen, telling him exactly where the gnome is coming from.(set: $yousen_action to "failed stab")
](if: $just_said is "warnAstarion")[You warn Astarion about Yousen.(set: $yousen_action to "partial stab")
](display: "Player Action Results Leon"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "counterspell")[Astarion casts counterspell, targeting Leon's magic.(set: $leon_action to "fizzle")(set: $astarion_inventory to it - (a: 'scroll of counterspell'))
](else:)[Astarion stabs Leon. <span class='health'>//Leon Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]
(if: $violet_action is not "nothing")[<span class="emph">//Violet's Turn//</span>(set: $violet_in_combat to true)
(if: $violet_action is "stab yousen")[Violet leaps out of the shadow where she was hiding and directly into the shadow where Yousen is hiding. She stabs him. <span class='health'>//Yousen Lost 12 Health//</span><script>playAudio("aa_damage");</script>
](elseif: $violet_action is "stab leon")[Violet leaps out of the shadow where she was hiding and stabs Leon. <span class='health'>//Leon Lost 12 Health//</span>(set: $enemy_damange to it+12)
]
](if: $yousenState is "dream aware")[<span class="emph">//Yousen's Turn//</span>(set: $yousen_seen to true)(set: $yousen_in_combat to true)<script>addAchieve("New Least Favorite Brother");</script>
(if: $violet_action is "stab yousen")[Yousen shrieks in pain, staggers away from Violet, and flees down the stairs.(set: $yousenState to "stabbed")
](elseif: $yousen_action is "failed stab")[Yousen emerges from a shadow at the stop of the stairwell. He tries to stab Astarion, but Astarion heard your warning and dodges out of the way.
](elseif: $yousen_action is "partial stab")[Yousen emerges from a shadow at the stop of the stairwell. He tries to stab Astarion, but Astarion heard your warning. Astarion still gets hit, but it's not as bad as it might have been. (set: $dmg to 6)(display: "Damage Astarion Combat")
](elseif: $yousen_action is "stab")[Yousen emerges from a shadow at the stop of the stairwell. He stabs Astarion, taking him completely by surprise. (set: $dmg to 12)(display: "Damage Astarion Combat")
]
]<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](if: $leon_action is "cast web")[Leon casts a spell. Strands of silk manifest and branch out into huge, elaborate webs. Astarion is in the center of them and is immediately entangled.(set: $astarion_state to "webbed")
](elseif: $leon_action is "fizzle")[Leon casts a spell, but it is countered and fizzles.
]
(display: "Round Ends")(display: "Next Round"){
(if: $yousen_in_combat is true and $violet_in_combat is true)[<script>addAchieve("Turn Based Combat");</script>]
(set: $yousen_in_combat to false)
(set: $violet_in_combat to false)
}](elseif: $sequence is 4)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
(if: $violet_action is "stab leon")[Leon is retaliating against Violet, a bolt of fire igniting in his hand.(set: $leon_action to "attack violet")
](elseif: $astarion_state is "webbed")[Leon is attacking Astarion with a club. He has an advantage, since Astarion can't move. (set: $leon_action to "club astarion")
](else:)[Leon is casting a spell. Fire flickers between his fingers.(set: $leon_action to "cast flame")
]
(if: $astarion_state is "webbed")[Astarion is struggling to disentangle himself from the conjured webbing.(set: $astarion_action to "struggle")(if: $astarion_inventory contains 'ring' and $yousenState is "dream aware")[ He's trying to activate the ring on his finger, pointing it towards Yousen.(set: $astarion_action to "activate ring yousen")](elseif: $astarion_inventory contains 'ring' and $leon_action is "club astarion")[ He's trying to activate the ring on his finger, pointing it towards Leon.(set: $astarion_action to "activate ring leon")]
](elseif: $astarion_inventory contains 'ring')[Astarion is trying to activate the ring on his finger, pointing it towards Leon.(set: $astarion_action to "activate ring leon")
](else:)[Astarion is trying to stab Leon.(set: $astarion_action to "stab")
]
(if: $foundShimmerStairs is not true)[<span class="text-shimmer-long">Something gleams</span> near the banister.
](if: $yousenState is "dream aware")[Yousen is trying to stab Astarion.(if: $astarion_state is "webbed")[ He has an advantage, since Astarion can't move.](set: $yousen_action to "stab")
](if: $violet_action is not "nothing")[(if: $violet_action is "stab leon")[Violet is running away from Leon.(set: $violet_action to "dodge leon")](elseif: $violet_action is "stab yousen")[Violet running after Yousen.(set: $violet_action to "chase yousen")]
]
(if: $astarion_state is "webbed" and $touch is 2)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/5"></span>
](elseif: $astarion_state is "webbed" and $touch is 3)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/4"></span>
](elseif: $astarion_state is "webbed" and $touch is 4)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/3"></span>
](elseif: $astarion_state is "webbed" and $touch is 5)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/2"></span>
](elseif: $astarion_state is "webbed")[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/1"></span>
](if: $player_inventory contains 'scroll of counterspell' and $leon_action is "cast flame")[<span id="counterspell" class="energy-link" data-content="Cast Counterspell./Speech/3/+1"></span>
](if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/+1"></span>
](display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 5)[<span class="emph">//Your Turn//</span>
(if: $just_said is "freeAstarion")[(if: $touch < 4)[It takes a great deal of energy, but you](else:)[You] tear through the cobwebs, helping Astarion get free.(set: $astarion_state to "free")(set: $enemy_distract_count to it+1)
](elseif: $just_said is "counterspell")[You cast counterspell, targeting Leon's magic.(set: $leon_action to "fizzle")(set: $enemy_distract_count to it+1)(set: $player_inventory to it - (a: 'scroll of counterspell'))
](elseif: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
He grunts in pain and some of his attention shifts towards you.
](if: $just_said is "push" or $just_said is "touch")[Leon ignores you. As long as you're not hurting him, he's not going to regard you as a threat.
](if: $just_said is "violetStab")[You say Violet's name. She giggles from a nearby shadow and rolls initiative.(if: $yousenState is "dream aware")[(set: $violet_action to "stab yousen")](else:)[(set: $violet_action to "stab leon")(set: $enemy_distract_count to it+1)](set: $violetWillStab to false)
](display: "Player Action Results Leon"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "struggle" and $astarion_state is "webbed")[Astarion struggles to get out of the webbing.
](elseif: $astarion_action is "activate ring yousen" and $astarion_state is "webbed")[Astarion struggles to get out of the webbing. As Yousen approaches him, he activates his magic ring. There's a dazzling spray of colors and Yousen staggers back, blinded.(set: $yousen_action to "flee blind")
](elseif: $astarion_action is "activate ring yousen")[Astarion activates his magic ring, aiming it at Yousen. There's a dazzling spray of colors and Yousen staggers back, blinded. Astarion stabs him. <span class='health'>//Yousen Lost 12 Health//</span><script>playAudio("aa_damage");</script>(set: $yousen_action to "flee blind")
](elseif: $astarion_action is "activate ring leon" and $astarion_state is "webbed")[Astarion struggles to get out of the webbing. As Leon approaches him, he activates his magic ring. There's a dazzling spray of colors and Leon staggers back, blinded.(set: $leon_action to "blinded")
](elseif: $astarion_action is "activate ring leon")[Astarion activates his magic ring, aiming it at Leon. There's a dazzling spray of colors and Leon staggers back, blinded. Astarion stabs him. <span class='health'>//Leon Lost $astarion_sneak_damage Health//</span>(set: $enemy_damange to it+$astarion_sneak_damage)(set: $leon_action to "blinded")
](elseif: $astarion_action is "stab" or $astarion_action is "struggle")[Astarion stabs Leon. <span class='health'>//Leon Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]
(if: $violet_action is not "nothing")[<span class="emph">//Violet's Turn//</span>(set: $violet_in_combat to true)
(if: $violet_action is "dodge leon")[Violet runs down the stairs, trying to dodge away from Leon's spell.
](elseif: $violet_action is "chase yousen")[Violet cackles as she runs down the stairs, after Yousen.
](elseif: $violet_action is "stab yousen" and $yousen_action is "flee blind")[Violet leaps out of the shadow where she was hiding and shoves Yousen down the stairwell. <span class='health'>//Yousen Lost 8 Health//</span><script>playAudio("aa_damage");</script> (set: $yousen_action to "flee violet blind")
](elseif: $violet_action is "stab yousen")[Violet leaps out of the shadow where she was hiding and stabs Yousen. <span class='health'>//Yousen Lost 12 Health//</span><script>playAudio("aa_damage");</script> (set: $yousen_action to "flee violet")
](elseif: $violet_action is "stab leon")[Violet leaps out of the shadow where she was hiding and stabs Leon. <span class='health'>//Leon Lost 12 Health//</span>(set: $enemy_damange to it+12)(if: $leon_action is not "blinded")[(set: $leon_action to "attack violet")]
(if: $leon_action is "blinded")[Then she starts running away. She vanishes down the stairwell.](else:)[Then she starts running away down the stairs.]
]
](if: $yousenState is "dream aware")[<span class="emph">//Yousen's Turn//</span>(set: $yousen_in_combat to true)
(if: $yousen_action is "flee blind")[Yousen disengages and retreats back into the shadows.
](elseif: $yousen_action is "flee violet")[Yousen disengages and run desperately away from Violet. She chases him. They vanish down the stairwell.(set: $yousenState to "gone")
](elseif: $yousen_action is "flee violet blind")[Yousen crawls to his feet at the base of the stairs and staggers blindly away from the fight. Violet chases after him.(set: $yousenState to "gone")
](elseif: $yousen_action is "stab" and $astarion_state is "webbed")[Yousen stabs Astarion particularly well and viciously. Yousen excels at dispatching trapped targets. (set: $dmg to 24)(display: "Damage Astarion Combat")
Yousen disengages and retreats back into the shadows.
](elseif: $yousen_action is "stab")[Yousen stabs Astarion. (set: $dmg to 6)(display: "Damage Astarion Combat")
Yousen disengages and retreats back into the shadows.
]
]<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](if: $leon_action is "blinded")[Leon is momentarily blinded and doesn't act.
](if: $leon_action is "attack violet")[Leon hurls a bolt of fire at Violet. It hits her just before she disappears down the stairwell. <span class='health'>//Violet Lost 8 Health//</span><script>playAudio("aa_damage");</script>
](elseif: $leon_action is "club astarion" and $astarion_state is "webbed")[Leon clubs Astarion. It's particularly easy and effective since his target can't move. (set: $dmg to $leonDamage*2)(display: "Damage Astarion Combat")
](elseif: $leon_action is "club astarion")[Leon clubs Astarion. (set: $dmg to $leonDamage)(display: "Damage Astarion Combat")
](elseif: $leon_action is "cast flame")[Leon hurls a bolt of flame at Astarion. (set: $dmg to 8)(display: "Damage Astarion Combat")
](elseif: $leon_action is "fizzle")[Leon casts a spell, but it is countered and fizzles.
]
(display: "Round Ends")(display: "Next Round"){
(if: $yousen_in_combat is true and $violet_in_combat is true)[<script>addAchieve("Turn Based Combat");</script>]
(set: $yousen_in_combat to false)
(set: $violet_in_combat to false)
}](elseif: $sequence is 6)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
(if: $enemy_distract_count > 2)[You have interfered with the fight to the point where Leon has decided you're a problem. He has turned towards you and flames dance between his fingers.(set: $leon_action to "burn player")(set: $enemy_distract_count to 0)
](elseif: $astarion_state is "webbed")[Leon is attacking Astarion with a club. He has an advantage, since Astarion can't move.(set: $leon_action to "club astarion")
](else:)[Leon is casting a spell at Astarion. Darts of magical force manifest, hovering over his hand.(set: $leon_action to "cast missile")
]
(if: $astarion_state is "webbed")[Astarion is struggling to disentangle himself from the conjured webbing. He's almost free.(set: $astarion_action to "struggle")
](else:)[Astarion is disengaging and retreating through a tall, open archway.(set: $astarion_action to "disengage")
](if: $foundShimmerStairs is not true)[
<span class="text-shimmer-long">Something gleams</span> near the banister.
]
(if: $astarion_state is "webbed" and $touch is 2)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/5"></span>
](elseif: $astarion_state is "webbed" and $touch is 3)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/4"></span>
](elseif: $astarion_state is "webbed" and $touch is 4)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/3"></span>
](elseif: $astarion_state is "webbed" and $touch is 5)[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/2"></span>
](elseif: $astarion_state is "webbed")[<span id="freeAstarion" class="energy-link" data-content="Free Astarion./Touch/2/+1/1"></span>
](if: $player_inventory contains 'scroll of counterspell' and $leon_action is not "club astarion")[<span id="counterspell" class="energy-link" data-content="Cast Counterspell./Speech/3/+1"></span>
](if: $energy > 0)[<span id="daughterName" class="energy-link" data-content="Pretend Leon`s daughter has arrived./Speech/3/50/0"></span>](else:)[<span id="daughterName" class="energy-link" data-content="Pretend Leon`s daughter has arrived./Speech/3/50/1"></span>]
(if: $violetWillStab is true)[<span id="violetStab" class="energy-link" data-content="Speak: Violet./Speech/2/+1"></span>
](display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
}](elseif: $sequence is 7)[<span class="emph">//Your Turn//</span>
(if: $just_said is "freeAstarion")[(if: $touch < 4)[It takes a great deal of energy, but you](else:)[You] tear through the cobwebs, helping Astarion get free.(set: $astarion_state to "free")(set: $enemy_distract_count to it+1)
](elseif: $just_said is "counterspell")[You cast counterspell, targeting Leon's magic.(set: $leon_action to "fizzle")(set: $player_inventory to it - (a: 'scroll of counterspell'))
](elseif: $just_said is "daughterName" and $daughter_name is "Victoria")[You say: Hello, Victoria.
Leon stops what he was doing and glances around in alarm.(set: $leon_action to "distracted")
](elseif: $just_said is "daughterName")[You say: Hello, $daughter_name.
Your words have no effect.
](elseif: $just_said is "violetStab")[You say Violet's name. She giggles from a nearby shadow and rolls initiative.(set: $violet_action to "stab leon")(set: $violetWillStab to false)
](elseif: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
](elseif: $just_said is "push" or $just_said is "touch")[You $just_said Leon. (if: $leon_action is "burn player")[A little redundantly. You already have his attention.](else:)[Leon ignores you. As long as you're not hurting him, he's not going to regard you as a threat.]
](display: "Player Action Results Leon"){
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_state is "webbed")[Astarion gets free of the webbing.
](if: $astarion_state is "webbed" and $health-$leonDamage <= 0 and $violet_action is not "stab leon" and $leon_action is not "distracted" and $leon_action is not "burn player")[Leon gets an attack in as he tries to retreat.](else:)[Astarion retreats from Leon, dashing through a tall, open archway.(if: $astarion_inventory contains 'oil')[
(if: $sight >= 2)[<span class="softEmph">`[Unlocked: Sight 2]`</span> As Astarion passes through the archway, he upends the flask of oil. Spattering the floor with slippery grease.](else:)[//Something happens beyond your perception. <span class="softEmph">Requires: Sight 2</span>//] (set: $astarion_inventory to it - (a: 'oil'))(set: $oil_in_archway to true)]]
(if: $violet_action is not "nothing")[<span class="emph">//Violet's Turn//</span>
(if: $violet_action is "stab leon")[Violet leaps out of the shadow where she was hiding and stabs Leon. <span class='health'>//Leon Lost 12 Health//</span>(set: $enemy_damange to it+12)
Then she starts running away down the stairs.
]
]<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](elseif: $leon_action is "fizzle")[Leon casts a spell, but it is countered and fizzles.
](elseif: $leon_action is "distracted")[Leon is distracted, looking around to see if his daughter has stumbled into this battlefield.
](elseif: $violet_action is "stab leon")[Leon turns his attack towards Violet. (if: $leon_action is "club astarion")[He hits her with the club as she darts away down the stairs.](else:)[His magic hits her just before she disappears down the stairwell.] <span class='health'>//Violet Lost 10 Health//</span><script>playAudio("aa_damage");</script>
](elseif: $leon_action is "burn player")[Leon casts a spell. His hands burn and a gout of flame pours out from them--broad enough to catch you even through he can't see precisely where you are. <span class='energy'>//Lost 4 Energy//</span>(set: $energy_change to -4)(display: "update energy silent")
](elseif: $leon_action is "club astarion")[(if: $astarion_state is "webbed")[Leon attacks Astarion as he retreats. (set: $dmg to $leonDamage)(display: "Damage Astarion Combat")](else:)[Leon tries to attack Astarion, but misses as Astarion dodges away into the next room.]
](elseif: $leon_action is "cast missile")[Leon casts a spell. Bolts of force shoot from his hand and hit Astarion in the back. (set: $dmg to 10)(display: "Damage Astarion Combat")
]
(display: "Round Ends")(display: "Next Round"){
(if: $astarion_state is "webbed")[(set: $astarion_state to "free")]
}](elseif: $sequence is 8)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
The fight has moved into an opulent ballroom. There's a band stage in the corner with a piano. There's a dais in the center with a tall throne.
Leon is walking into the ballroom. He is casting a spell. Fire flickers between his fingers. (if: $oil_in_archway is true)[ He has not noticed the patch of oil on the ground.(set: $leon_action to "slip")](else:)[(set: $leon_action to "cast flame")]
Astarion is hiding behind a cluster of chairs. It's not a very good hiding spot. He seems to be deliberating between attacking Leon and making a run for another open doorway.(if: $health > 35)[ It looks like he's leaning towards attacking.(set: $astarion_action to "stab")](else:)[ It looks like he's leaning towards running.(set: $astarion_action to "run")]
<span id="run" class="energy-link" data-content="Speak to Astarion: Run./Speech/2/+1/1"></span>
<span id="ambush" class="energy-link" data-content="Speak to Astarion: Attack./Speech/2/+1/1"></span>
<span id="distract" class="energy-link" data-content="Make a loud distracting noise./Speech/5/+1/1"></span>
(if: $player_inventory contains 'music box')[<span id="musicBox" class="energy-link" data-content="Play the music box./Speech/5/+1/1"></span>](else:)[|gray>[Play the music box.](click: ?gray)[//You don't have that.//]]
(if: $player_inventory contains 'scroll of counterspell')[<span id="counterspell" class="energy-link" data-content="Cast Counterspell./Speech/3/+1"></span>
](display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
<script>changeBackground("ballroom");</script>
(set: $leonTrickedWith to "nothing")
}](elseif: $sequence is 9)[<span class="emph">//Your Turn//</span>
(if: $just_said is "run")[You tell Astarion to run. (if: $astarion_trust > 10)[He nods.](else:)[He ignores you.]
](if: $just_said is "ambush")[You tell Astarion to attack Leon again. (if: $astarion_trust > 10)[He nods.(set: $astarion_action to "stab")](else:)[He ignores you.]
](if: $just_said is "distract")[You make a loud sound. Leon turns towards you, slightly distracted.(set: $leon_slightly_distracted to true)(set: $leonTrickedWith to "voice")
](if: $just_said is "musicBox")[You play the music box. Leon squints in confusion and turns to look at the piano on the band stage.(set: $leon_slightly_distracted to true)(set: $leonTrickedWith to "music")
](if: $just_said is "counterspell")[You cast counterspell, targeting Leon's magic.(if: $leon_action is "cast flame")[(set: $leon_action to "fizzle")(set: $enemy_distract_count to it+1)](set: $player_inventory to it - (a: 'scroll of counterspell'))
](if: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
](if: $just_said is "push" or $just_said is "touch")[Leon ignores you. As long as you're not hurting him, he's not going to regard you as a threat.
](if: $just_said is "nothing")[You do nothing.
]{
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "run")[Astarion dashes for a doorway in the far wall.(set: $astarion_to_storage to true)
](elseif: $astarion_action is "stab" and $leon_action is "slip")[Astarion jumps out and stabs Leon. It's particularly effective, since Leon just slipped on the oil. <span class='health'>//Leon Lost $astarion_sneak_damage Health//</span>(set: $enemy_damange to it+$astarion_sneak_damage)
](elseif: $astarion_action is "stab" and $leon_slightly_distracted is true)[Astarion jumps out and stabs Leon. Leon is just distracted enough that Astarion manages to catch him by surprise. <span class='health'>//Leon Lost $astarion_sneak_damage Health//</span>(set: $enemy_damange to it+$astarion_sneak_damage)
](elseif: $astarion_action is "stab")[Astarion jumps out and stabs Leon. It's not an ambush--his hiding spot wasn't good enough. <span class='health'>//Leon Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]
<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](if: $leon_action is "cast flame")[Leon hurls a bolt of flame at Astarion. (if: $astarion_action is "run" and $leon_slightly_distracted is true)[But he's slightly distracted and trying to hit a quickly moving target. He misses.](else:)[(set: $dmg to 8)(display: "Damage Astarion Combat")]
](if: $leon_action is "slip")[Leon slips on the patch of oil and almost falls down.
](elseif: $leon_action is "fizzle")[Leon casts a spell, but it is countered and fizzles.
]
(display: "Round Ends")(display: "Next Round"){
}](elseif: $sequence is 10)[{
(display: "Round Begins")
}<span class="emph">//Round $round_number//</span>
Leon is casting a spell. Lightening flickers between his fingers. (set: $leon_action to "cast lightening")
(set: $enemyHealthCheck to $enemyHealth-$astarion_weapon_damage)(if: $enemyHealthCheck < 15)[Astarion is trying to stab Leon.(set: $astarion_action to "stab")](else:)[Astarion sees the lightening and decides to disengaging and run for another open doorway.(set: $astarion_action to "run")]
<span id="distract" class="energy-link" data-content="Make a loud distracting noise./Speech/5/+1/1"></span>
(if: $player_inventory contains 'music box')[<span id="musicBox" class="energy-link" data-content="Play the music box./Speech/5/+1/1"></span>](else:)[|gray>[Play the music box.](click: ?gray)[//You don't have that.//]]
(if: $player_inventory contains 'scroll of counterspell')[<span id="counterspell" class="energy-link" data-content="Cast Counterspell./Speech/3/+1"></span>
](display: "Attack Options")
<span id="nothing" class="energy-link" data-content="Do nothing./Touch/0/+1/0"></span>{
(set: $leon_slightly_distracted to false)
}](elseif: $sequence is 11)[<span class="emph">//Your Turn//</span>
(if: $just_said is "distract")[You make a loud sound. (if: $leonTrickedWith is "voice")[Leon ignores you--that won't work twice.](else:)[Leon turns towards you, slightly distracted.(set: $leon_slightly_distracted to true)]
](if: $just_said is "musicBox")[You play the music box. (if: $leonTrickedWith is "music")[Leon ignores you--that won't work twice.](else:)[Leon squints in confusion and turns to look at the piano on the band stage.(set: $leon_slightly_distracted to true)(set: $leonTrickedWith to "music")]
](if: $just_said is "counterspell")[You cast counterspell, targeting Leon's magic.(if: $leon_action is "cast lightening")[(set: $leon_action to "fizzle")(set: $enemy_distract_count to it+1)](set: $player_inventory to it - (a: 'scroll of counterspell'))
](if: $just_said is "attack")[You attack Leon. <span class='health'>//Leon Lost $player_weapon_damage Health//</span>(set: $enemy_damange to it+$player_weapon_damage)(set: $enemy_distract_count to it+2)
](if: $just_said is "push" or $just_said is "touch")[Leon ignores you. As long as you're not hurting him, he's not going to regard you as a threat.
](if: $just_said is "nothing")[You do nothing.
]{
}<span class="emph">//Astarion's Turn//</span>
(if: $astarion_action is "run")[Astarion dashes for a doorway in the far wall.(set: $astarion_to_storage to true)
](elseif: $astarion_action is "stab")[Astarion stabs Leon. <span class='health'>//Leon Lost $astarion_weapon_damage Health//</span>(set: $enemy_damange to it+$astarion_weapon_damage)
]
<span class="emph">//Leon's Turn//</span>(display: "Check Enemy Death")
(if: $leon_action is "die")[Leon stops fighting.
](if: $leon_action is "cast lightening")[Leon hurls a bolt of lightening at Astarion. (if: $astarion_action is "run" and $leon_slightly_distracted is true)[But he's slightly distracted and trying to hit a quickly moving target. He misses.](else:)[(set: $dmg to 16)(display: "Damage Astarion Combat")]
](if: $leon_action is "fizzle")[Leon casts a spell, but it is countered and fizzles.
]
(display: "Round Ends")(display: "Next Round"){
}](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 50)[{
}That would be clever. Do you know his daughter's name?
<input type="text" id="daughterNameInput" name="fname" value="Girl">
|daughterName>[Say hello to her. //<span class="energy">1</span>//]
|notThis>[Something else.]
{
(set: $daughter_name to "Girl")
(set: $daughter_name_lowercase to "girl")
(click: ?notThis)[(set: $sequence to 6)(go-to: $currentPassage)]
(click: ?daughterName)[
(set: $sequence to 7)
<script>
reduceEnergy();
var daughter_name = $("#daughterNameInput").val();
seth("daughter_name",daughter_name);
seth("daughter_name_lowercase",daughter_name.toLowerCase());
seth("just_said","daughterName");
</script>
(go-to: $currentPassage)
]
}](elseif: $sequence is 51)[
]{
(click: ?endFight)[(set: $sequence to 0)(go-to: "On The Landing")]
(click: ?endFightFlee)[(set: $sequence to 0)(go-to: "Storage Room")]
(click: ?nextRound)[(set: $sequence to it+1)(go-to: $currentPassage)]
}(if: $sequence is 0 and $his_attention+2 >= $his_attention_max and $avoidedLeon is not true)[You pass through a well appointed hallway on the way to the ramparts.
Astarion is moving quickly. The fight was loud.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
Someone is approaching.
|hisPresence>[Continue]{
(click: ?hisPresence)[(set: $came_from to "ramparts")(go-to: "His Presence")]
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 0)[You pass through a well appointed hallway on the way to the ramparts.(if: $avoidedLeon is not true)[
Astarion is moving quickly. The fight was loud.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>]
|next>[Continue]{
<script>changeBackground("hallway");</script>
}](elseif: $sequence is 1)[You come to a stop in front of an ornate doorway.(if: not ($unvisitedLocations contains "foyer"))[ Very similar to the front door in the foyer.]
Astarion pauses to listen at it.
Hearing nothing, he opens the door.
|next>[Continue]{
<script>changeBackground("frontDoorClosed");</script>
}](elseif: $sequence is 2)[The ramparts are filled with teeth.
|next>[Astarion immediately closes the door.]{
<script>changeBackground("ramparts");</script>
}](elseif: $sequence is 3)[Astarion leans against the closed door.
$astarion What in the hells was //that?//
<span id="bastellus" class="energy-link" data-content="Speak: Bastellus./Speech/2/6"></span>
<span id="nightmare" class="energy-link" data-content="Speak: Nightmare./Speech/2/6"></span>
<span id="monster" class="energy-link" data-content="Speak: Dream monster./Speech/3/6"></span>
<span id="sawIt" class="energy-link" data-content="Speak: You saw it?/Speech/4/+1"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/6/0"></span>{
<script>changeBackground("frontDoorClosed");</script>
}](elseif: $sequence is 4)[$astarion Yes. Yes, of course I saw the eight foot tall black shadow-thing with a face made of teeth.
$astarion It's the sort of thing that //stands out.//
<span id="couldnt" class="energy-link" data-content="Speak: Couldn`t see before./Speech/4/+1"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/6/0"></span>{
}](elseif: $sequence is 5)[$astarion I couldn't see it before?
$astarion I couldn't //see// it before? Which implies it was //here before?//
$astarion Has that thing just been //hanging about?//
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="maybe" class="energy-link" data-content="Say maybe./Speech/0"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
}](elseif: $sequence is 6)[(if: $just_said is "yes" or $just_said is "maybe")[$astarion I hate everything about this situation.
](elseif: $just_said is "no")[$astarion Oh, you are //very obviously// lying to me right now.
](if: $just_said is "nothing")[$astarion That's the thing, isn't it? The creature that the note was about?](else:)[$astarion That's the thing, then? The creature that the note was about?]
$astarion The monster that did all this. Who brought me back here.
$astarion Who put me in the tomb.
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
}](elseif: $sequence is 7)[$astarion It's blocking the way to the ramparts. But that's something of a good sign, isn't it?
$astarion If it's trying to stop us. That means we're on the right path.
$astarion And the ramparts isn't the only way out.
$astarion We could get to the roof through the lower attic. We could go there instead.
<span id="attic" class="energy-link" data-content="Speak: Attic./Speech/2/+1"></span>
<span id="rampart" class="energy-link" data-content="Speak: Rampart./Speech/2/+1"></span>
<span id="slay" class="energy-link" data-content="Speak: Slay monster./Speech/3/+1"></span>
(if: $astarion_trust > 14 and $class is "paladin")[<span id="implyPal" class="energy-link" data-content="[PALADIN] Without even having to speak, imply through your emotional connection with Astarion that you would really like to slay this monster./Touch/0/+1/0"></span>
<span class="explain">Requires Trust 15.</span>
](elseif: $speech < 2 and $astarion_trust > 17)[<span id="imply" class="energy-link" data-content="Despite the fact you can`t talk, imply through your emotional connection with Astarion that you would really like to slay this monster./Touch/0/+1/0"></span>
<span class="explain">Requires Trust 17.</span>
]<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
}](elseif: $sequence is 8)[(if: $just_said is "nothing")[$astarion The attic. That's safer. Let's go to the attic.
$astarion Let that thing rot out there. I just want to get out.
He moves down the hall, backtracking. He leads you through a large ballroom, a small storage room, and up a long ladder.
|atticFromRampart>[You are pulled after him.]{
}](elseif: $just_said is "attic")[Astarion nods quickly.
$astarion Yes. That's safer. Let's go to the attic.
$astarion Let that thing rot out there. I just want to get out.
He moves down the hall, backtracking. He leads you through a large ballroom, a small storage room, and up a long ladder.
|atticFromRampart>[You are pulled after him.]{
}](elseif: $just_said is "rampart")[$astarion You want to go out there and fight that thing?
$astarion Because that's a fight. We're not sneaking around it. It's watching the door.
$astarion Don't misunderstand me. I would love to kill that thing. Gods, I want to see it die.
$astarion But I also want to survive this.
$astarion Let me think. I need to think.
|next>[Continue]{
}](elseif: $just_said is "implyPal" or $just_said is "imply" or $just_said is "slay")[$astarion Yes, I //know// you want to slay the monster. Of course you do.
$astarion Don't misunderstand me. I would love to kill that thing. Gods, I want to see it die.
$astarion But I also want to survive this.
$astarion Let me think. I need to think.
|next>[Continue]{
(if: $just_said is "implyPal" or $just_said is "imply")[<script>addAchieve("I Would REALLY Like To Vanquish The Monster Please");</script>]
}]{
}](elseif: $sequence is 9)[Astarion leans against the door to the ramparts. He spends a moment considering which he wants more: to kill the thing that did this or to get the hells out of this nightmare. A number of things affect his decision.
<span class="energy">Requirements To Fight The Bastellus</span>(set: $willFight to true)
Trust at least 18
(if: $astarion_trust >= 18)[<span class="energy">Passed:</span> Trust (print: $astarion_trust)](else:)[<span style="color: #553338;">Failed:</span> Trust (print: $astarion_trust)(set: $willFight to false)]
Health at least 45
(if: $health >= 45)[<span class="energy">Passed:</span> Health (print: $health)](else:)[<span style="color: #553338;">Failed:</span> Health (print: $health)(set: $willFight to false)]
Quality Weapon
(if: $gaveAstarionFangs is true)[<span class="energy">Passed:</span> (display: "Fang Weapon Name")
](elseif: $astarion_inventory contains 'knife')[<span class="energy">Passed:</span> (if: $knife_nature is "hunter")[A knife that makes things bleed.](elseif: $knife_nature is "sussur")[A knife that creates silence.](elseif: $knife_nature is "assassin")[A knife for killing dreams.](else:)[A knife.]
](else:)[<span style="color: #553338;">Failed:</span> A rusty dagger.(set: $willFight to false)
]
His Attention under 13
(if: $his_attention < 13)[<span class="energy">Passed:</span> Attention (print: $his_attention)](else:)[<span style="color: #553338;">Failed:</span> Attention (print: $his_attention)(set: $willFight to false)]
(if: $gaveAstarionFangs is not true and $bastellusFangs > 1)[|next>[Give (display: "Fang Weapon Name") to Astarion.]
]|skip>[Continue]{
}](elseif: $sequence is 10)[$astarion Oh. This is delightfully ominious.
$astarion And very sharp.
<span class='inv'>Astarion gained (display: "Fang Weapon Name").</span>
|prev>[Continue]{
(set: $gaveAstarionFangs to true)
}](elseif: $sequence is 11)[(if: $willFight is true)[$astarion Damn it. Fine.
$astarion Let's kill that thing.
You feel that you're not alone in this.
<span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)
|next>[Continue]{
(set: $night to "The nightmare")
(if: $sigh contains "Sigh:")[(set: $night to "Sigh")]
}](else:)[Astarion shakes his head.
$astarion No. I can't. We can't. This is stupid. It would kill us.
$astarion The attic. That's safer. Let's go to the attic.
$astarion Let that thing rot out there. I just want to get out.
He moves down the hall, backtracking. He leads you through a large ballroom, a small storage room, and up a long ladder.
|atticFromRampart>[You are pulled after him.]{
}]](elseif: $sequence is 12)[There's no way to ambush it. It's watching the door.
So Astarion throws open the door and lunges out onto the ramparts.
$night laughs.
|attackSigh>[Rolling initiative.]{
<script>changeBackground("ramparts");</script>
}](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?atticFromRampart)[(set: $sequence to 0)(go-to: "Attic")]
(click: ?attackSigh)[(set: $sequence to 0)(go-to: "Nightmare")]
}(if: $sequence is 0)[(if: $leon_action is "surrender sussur" or $leon_action is "surrender")[Hurt and bleeding, Leon backs away from Astarion. Hands still spread. Not attacking. Not casting.(if: $leon_action is "surrender sussur")[ Mist and silence still leak from his wound.]
Astarion lets him go, gripping the handle of his knife and watching Leon like a hawk until he's disappeared down the stairwell.
(if: $yousen_seen is true and $yousenState is "dream aware")[Then Astarion turns towards a nearby shadow and makes a sudden, startling movement towards it. Yousen flinches and retreats down the stairs, after Leon.
]The landing is quiet.
$astarion The ramparts. The door to the ramparts is right over there. Come on.
He walks towards it.
|ramparts>[You feel yourself pulled after him.]{
<script>addAchieve("Mage Slayer");</script>
}](elseif: $leon_action is "die")[Leon lies still on the ground. By the nature of what he is, it's impossible to tell if he's unconscious or dead.
Astarion stares at the body for a moment, gripping the hilt of his knife very tightly. (if: $yousen_seen is true and $yousenState is "dream aware")[
Then he turns towards a nearby shadow and makes a sudden, startling movement towards it. Yousen flinches and retreats down the stairs.
]The landing is quiet.
$astarion The ramparts. The door to the ramparts is right over there. Come on.
He walks towards it.
|ramparts>[You feel yourself pulled after him.]{
<script>addAchieve("Mage Slayer");</script>
}](elseif: $leon_action is "capture")[Leon casts a spell to stabilize Astarion.
Then he steps forward and gathers up Astarion's limp body.(set: $health to 1)
$leon What do we do now?
|worstEnding>[Yousen steps out of a shadow.]{
}](elseif: $leon_action is "cazador")[Leon casts a spell to stabilize Astarion.
Then he steps forward and gathers up Astarion's limp body.(set: $health to 1)
(if: $yousenSpokeLeon is true)[He glances around the hall, eyes flickering over various shadows.
$leon Yousen?
There is no response. He shrugs.
]He starts walking downstairs. Looking for his master.
|next>[Continue]
]{
(set: $enemyHealthDisplay to false)
}](elseif: $sequence is 1)[This was inevitable.{
<script>playAudio("aa_scream");</script>
<script>changeBackground("attention3");</script>
<script>musicLoop(""); </script>
(set: $health to 0)
(live: 6s)[
<script>
resetScreen();
musicStopAll();
</script>
]
(live: 7s)[
(set: $healthDisplay to false)
(set: $sequence to 2)(go-to: "Death Sigh")
]
}](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[$yousen Long term equilibrium may be complicated. It will involve a sort of balancing act of pain and succor. But I have discussed the matter with the entity on the ramparts and I believe it will be possible.
$yousen We must avoid the master. I suspect bringing them together would create a failure state. A collapse. We should take him back down to the tomb.
$leon And that will keep everyone safe?
$yousen Yes. Though there may be additional outside interference.
$yousen We will have to ensure the door stays closed this time.
|next>[They descend the stairs.]{
<script>addAchieve("Forever Dreaming");</script>
}](elseif: $sequence is 5)[<span class="day-text">Day <span id="day-num">$day</span></span>
Time passes.
|goToTitle>[Return to title.]{
<script>changeBackground("columnsFrame");</script>
(live: 1s)[<script>
var day = geth("day");
day++;
seth("day",day);
$("#day-num").html(day);
playAudio("aa_clock_tick1");
</script>(stop:)]
(live: 5s)[<script>
var day = geth("day");
day++;
seth("day",day);
$("#day-num").html(day);
playAudio("aa_clock_tick1");
</script>]
}](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?worstEnding)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?ramparts)[(set: $sequence to 0)(go-to: "Ramparts")]
}(if: $just_said is "gleam")[You touch the shimmering. You feel you are fighting with people by your side. More than just the one. <span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)(set: $foundShimmerStairs to true)
](if: $just_said is "nothing")[You do nothing.
](if: $leon_action is "die")[Leon stops fighting.
]{
(if: $astarion_inventory contains 'padded doublet')[(set: $dmg to it-2)]
<script>playAudio("aa_damage");</script>
}<span class='health'>//Astarion Lost $dmg Health//</span>(set: $astarion_damange to it+$dmg)(set: $health_change to (0-$astarion_damange))(display: "update health combat")(if: $touch is 6 or $bastellusFangs > 1)[(display: "Player Attack")
](if: $touch > 2)[<span id="push" class="energy-link" data-content="Push $enemy./Touch/3/+1/1"></span>](else:)[<span id="touch" class="energy-link" data-content="Touch $enemy./Touch/1/+1/1"></span>](if: $foundShimmerStairs is not true and $currentPassage is "Leon")[
<span id="gleam" class="energy-link" data-content="Touch the gleam./Touch/0/+1/0"></span>]{
(if: $astarion_inventory contains 'padded doublet')[(set: $dmg to it-2)]
}<span class='health'>//Astarion Lost $dmg Health//</span>(set: $astarion_damange to it+$dmg)(if: $bastellusFangs is 2)[<span id="attack" class="energy-link" data-content="Attack $enemy./Touch/5/+1/2"></span>{
}](elseif: $bastellusFangs is 3)[<span id="attack" class="energy-link" data-content="Attack $enemy./Touch/3/+1/1"></span>{
}](elseif: $bastellusFangs is 4)[<span id="attack" class="energy-link" data-content="Attack $enemy./Touch/1/+1/1"></span>{
}](elseif: $bastellusFangs is 5)[<span id="attack" class="energy-link" data-content="Attack $enemy./Touch/0/+1/0"></span>{
}](else:)[<span id="attack" class="energy-link" data-content="Attack $enemy./Touch/6/+1/3"></span>{
}](if: $leon_action is "surrender sussur")[|endFight>[Leon puts his hands up in an attitude of surrender.]{
}](elseif: $leon_action is "die")[|endFight>[Leon collapses to the ground.]{
}](elseif: $enemyHealth < 15)[|endFight>[Leon puts his hands up in an attitude of surrender.](set: $leon_action to "surrender"){
}](elseif: $health is 0 and $yousenState is "dream aware")[|endFight>[Astarion collapses.](set: $leon_action to "capture")(set: $die_next_screen to false){
}](elseif: $health is 0)[|endFight>[Astarion collapses.](set: $leon_action to "cazador")(set: $die_next_screen to false){
}](elseif: $astarion_to_storage is true)[|endFightFlee>[Astarion makes it through the doorway.]{
}](else:)[|nextRound>[$next_round_text]](if: $sequence is 0)[You are in a dusty storage room.
Astarion darts to the far wall and presses a button that was half-concealed by a crate.
The door to the storage room slams shut.
|next>[Continue]{
}](elseif: $sequence is 1)[Astarion moves back to the door and listens.
Leon is audible in the next room. Moving around. Presumably trying to figure out if there is a way to open the door from his side.
He evidently doesn't find one, as you eventually hear his footsteps retreating.
|next>[Continue]{
}](elseif: $sequence is 2)[$astarion That could have gone better.
//<span class="attention">His Attention +2</span>//<script>updateAttention(2);</script>
$astarion But this is fine. We can get to the lower attic from here.
$astarion And we can get to the roof from the attic.
He turns and climbs a long ladder in the corner of the room.
|nextArea>[You feel yourself pulled after him.]
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?nextArea)[(set: $sequence to 0)(go-to: "Attic")]
(set: $enemyHealthDisplay to false)
<script>changeBackground("storage");</script>
}(if: $sequence is 0)[You pass a gargoyle. //Monstrous. Beastly. Protective.//
<span class="text-shimmer-long">Something gleams</span> in its mouth.
|next>[Touch it.]
|skip>[Leave it be.]{
<script>changeBackground("gargoyle");</script>
}](elseif: $sequence is 1)[You touch the shimmering. The gargoyle is very happy to have been able to fetch this for you. <span class='energy'>//Recovered All Energy//</span>(set: $energy to $maxEnergy)(set: $foundShimmerStairs to true)<script>playAudio("aa_tap2");</script>
Astarion is still climbing.
|skip>[As he rises, so do you.]{
}](elseif: $sequence is 2)[You don't think you need it.
Not at this point.
Astarion is still climbing.
|next>[As he rises, so do you.]{
}](elseif: $sequence is 3)[Astarion asks you a question as he climbs.
$astarion There are people, aren't there? Waiting for us?
$astarion Waiting for you? Waiting for you, I think.
$astarion You're the center of things, aren't you?
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="youToo" class="energy-link" data-content="Speak: You too./Speech/3"></span>
|sayNothingOne>[Say nothing.]{
<script>changeBackground("wall");</script>
}](elseif: $sequence is 4)[(if: $just_said is "youToo")[Astarion makes an incredulous noise, then quickly moves on.
](elseif: $just_said is "no")[Astarion makes an skeptical noise, but moves on.
]$astarion What are they like? The others.
<span id="wonderful" class="energy-link" data-content="Speak: Wonderful./Speech/2"></span>
<span id="desperate" class="energy-link" data-content="Speak: Desperate./Speech/2"></span>
<span id="kind" class="energy-link" data-content="Speak: Kind./Speech/2"></span>
<span id="dangerous" class="energy-link" data-content="Speak: Dangerous./Speech/2"></span>
<span id="capable" class="energy-link" data-content="Speak: Capable./Speech/2"></span>
(if: $speech < 2)[<span id="touch" class="energy-link" data-content="Tap his head to remind him you can't talk./Touch/1"></span>
]|sayNothingOne>[Say nothing.]
{
}](elseif: $sequence is 5)[(if: $just_said is "wonderful" or $just_said is "kind")[$astarion Hm. That's a word.
$astarion I don't know anyone I'd describe like that.(if: $astarion_trust > 18)[
$astarion Apart from you, of course.](elseif: $astarion_trust > 13)[
$astarion Apart from...
He cuts himself off before finishing that sentence. (if: $sight > 3)[<span class="softEmph">`[Unlocked: Sight 4]`</span> He looks self-conscious.]]
](elseif: $just_said is "desperate")[Astarion laughs, not very kindly.
$astarion I'm sure I'll feel right at home, then.
](elseif: $just_said is "dangerous")[$astarion Dangerous, are they?
$astarion I rather like the idea of having dangerous companions.
](elseif: $just_said is "capable")[$astarion That seems obvious.
$astarion I wonder how they managed everything they managed.
](elseif: $just_said is "touch")[He bats your mostly intangible hand away.
$astarion Right. Right.
]He continues to climb.
|nextOne>[As he rises, so do you.]{
}](elseif: $sequence is 6)[You say nothing and the question fades, unanswered.
Astarion continues to climb.
|nextOne>[As he rises, so do you.]{
}](elseif: $sequence is 7)[(if: $astarion_trust < 10)[Astarion seems about to ask something else.
//<span class="softEmph">Requires: Trust 10</span>//
But then he glances narrowly in your direction and seems to think better of it.
|nextTwo>[He continues to climb.]{
}](else:)[Astarion asks something else.
$astarion In the real world. What are we supposed to call it? The waking world? Not here.
$astarion This palace is still there. Cazador is still there.
$astarion But I got out somehow?
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="kidnap" class="energy-link" data-content="Speak: Mindflayer tadpole kidnapping./Speech/4"></span>
|sayNothingTwo>[Say nothing.]{
}]](elseif: $sequence is 8)[(if: $just_said is "kidnap")[Astarion stops climbing for a moment to look over in your direction.
$astarion You're going to need a lot more than three words to explain that.
$astarion Let's put a pin in this conversation until we're out.
He starts climbing again.
|nextTwo>[As he rises, so do you.]{
}](else:)[$astarion My siblings. Are they also out?
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
|sayNothingTwo>[Say nothing.]{
}]](elseif: $sequence is 9)[$astarion I see.(if: $just_said is "yes")[
$astarion Good.](elseif: $just_said is "no")[
$astarion But //I'm// out.]
$astarion But Cazador's still alive, isn't he? I can tell, I...
He stops for a moment, holding on to the wall.
$astarion I would feel different. I wouldn't //be// like this. If he were gone.
$astarion Are you, and the others, going to help me with that?
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="plan" class="energy-link" data-content="Speak: I have plan./Speech/4"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
}](elseif: $sequence is 10)[(if: $just_said is "yes")[Astarion doesn't respond immediately. He's leaning his head against the stonework.
$astarion Thank you.
](elseif: $just_said is "no")[He doesn't respond immediately. Then he shrugs.
$astarion I suppose it would be absurd to ask for more than this.
](elseif: $just_said is "plan")[$astarion Do you now? You have plan? How exciting.
$astarion Let's get you back to the waking world so you can start using indefinite articles again.
](elseif: $just_said is "nothing")[He waits a while for an answer. Where none comes, he draws the obvious conclusion. He shrugs.
$astarion I suppose it would be absurd to ask for more than this.
]He starts climbing again.
|nextTwo>[As he rises, so do you.]{
}](elseif: $sequence is 11)[You say nothing and the question fades, unanswered.
Astarion continues to climb.
|nextTwo>[As he rises, so do you.]{
}](elseif: $sequence is 12)[You reach another gargoyle.
Astarion pauses to perch on top of it and rest his hands.
$astarion It feels like this is taking a while.
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
<span id="logic" class="energy-link" data-content="Speak: Dream logic./Speech/3"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
<script>changeBackground("gargoyle");</script>
}](elseif: $sequence is 13)[$astarion Do you even have to climb? Or are you just floating?
He squints at you.
$astarion You're just floating. You intangible freeloader.
He sounds amused by this.
|next>[Continue]{
}](elseif: $sequence is 14)[(if: $astarion_trust < 15)[He shifts uncomfortably on his perch. He considers saying something.
//<span class="softEmph">Requires: Trust 15</span>//
He decides not to. He starts climbing again.
|nextThree>[As he rises, so do you.]{
}](else:)[$astarion When did you arrive? Days ago. I've lost count.
$astarion I used to try to count. Back in the beginning.
(if: $first_contact is "tap")[$astarion When you arrived you were just this little scrabbling sound.
$astarion I thought you might be a rat, but the tapping was too deliberate.
](elseif: $first_contact is "music")[$astarion When you arrived you were...music.
$astarion Like something from another world.
](elseif: $first_contact is "fear")[$astarion When you arrived you almost startled my soul free.
$astarion A grasping shadow out from nothing.
$astarion I don't think you meant to. Thoughtless thing.
](else:)[$astarion When you arrived you were just a voice in the dark.
$astarion Do you know how long it had been since I heard another voice?
]
<span id="yes" class="energy-link" data-content="Say yes./Speech/0"></span>
<span id="no" class="energy-link" data-content="Say no./Speech/0"></span>
(if: $first_contact is "fear")[<span id="sorry" class="energy-link" data-content="Speak: Sorry./Speech/0"></span>
]<span id="touch" class="energy-link" data-content="Touch his hand./Touch/1"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>{
}]](elseif: $sequence is 15)[$astarion I know I've had some problems. With memory. Remembering things.
$astarion But I am not going to forget this.
He exhales slowly. He looks down at the view, which is magnificent from his height.
$astarion Gods. I'm out. I didn't think...this doesn't feel real.
$astarion I suppose it's not.
$astarion Still a dream.
<span id="real" class="energy-link" data-content="Speak: Also real./Speech/3"></span>
<span id="soon" class="energy-link" data-content="Speak: Soon./Speech/2"></span>
<span id="tap" class="energy-link" data-content="Tap the wall./Touch/1"></span>
<span id="nothing" class="energy-link" data-content="Say nothing./Speech/0/+1/0"></span>
](elseif: $sequence is 16)[(if: $just_said is "tap" or $just_said is "real" or $just_said is "soon")[Astarion nods.](else:)[Astarion shifts restlessly.] Then he stands, balancing easily on the narrow sculpture.
He starts climbing again.
As he rises, so do you.
|next>[You reach the roof.]{
}](elseif: $sequence is 17)[You reach the top of the palace. Astarion climbs over the edge onto the roof. You drift after him.
You both look around. Look up.
|next>[There's something floating in the sky.]{
<script>changeBackground("somethingInTheSky");</script>
}](elseif: $sequence is 18)[It's like an island above you, but it's made out of many places.
There's a beach, decorated with the twisted, burning wreckage of a strange ship.
There's a forest, |exp1>[thick with trees.](click: ?exp1)[ //You see them |exp2>[from below,] roots dangling.//(click: ?exp2)[ //But also |exp3>[from the side] as if you are about to pass into the shade of the trees.//(click: ?exp3)[ //Perspective is very strange.//]]]
There are ruins. There are caves. A swamp. A glade.
There's a world hanging above the palace.
<span id="real" class="energy-link" data-content="Speak: Wow./Speech/2"></span>
|next>[Wait.]{
}](elseif: $sequence is 19)[$astarion Yes, I remember. I know this. I've //been// there.
$astarion But it's so far away from here.
$astarion How do we get up to it?
|next>[Continue]{
(set: $progress to 0)
(set: $timeSearching to 0)
(set: $askedAstarion to false)
(set: $toldStory to false)
(set: $placesSearched to (a:))
(set: $escape to 0)
(set: $escape_max to 10)
}](elseif: $sequence is 20)[You are on the roof.
A world is hanging in the sky above you. A distorted conglomeration of: beach, ship, swamp, forest, caverns.
(if: $timeSearching < 4)[Astarion is walking along the ridge of the roof, looking for a way up.
](elseif: $timeSearching < 8)[Astarion is walking along the ridge of the roof. He seems increasingly frustrated.
](else:)[Astarion is sitting on the roof, looking up.
]
|next>[Examine the world.]
|refresh>[Wait.]{
(set: $timeSearching to it+1)
}](elseif: $sequence is 21)[(if: $progress is 0)[Where will you begin?](else:)[Where will you go next?]
(if: not ($placesSearched contains "beach"))[<span id="beach" class="energy-link" data-content="The beach./Touch/0/22/0"></span>
](if: not ($placesSearched contains "caves"))[<span id="caves" class="energy-link" data-content="The caves./Touch/0/25/0"></span>
](if: not ($placesSearched contains "swamp"))[<span id="swamp" class="energy-link" data-content="The swamp./Touch/0/28/0"></span>
](if: $progress < 3)[|gray>[The forest.](click: ?gray)[//Not yet.//]](else:)[<span id="forest" class="energy-link" data-content="The forest./Touch/0/31/0"></span>]
(if: $progress is 0)[|prev>[Stop looking.]]{
}](elseif: $sequence is 22)[You examine the distant beach. The sandy plane of it curls like a möbius strip, hanging like the coils of a half-peeled apple skin off the bottom of the world. It is speckled with burning detritus from a strange, crashed ship.
What |story>[happened there?]
<span id="cleric" class="energy-link" data-content="You met a cleric./Speech/0/+1/0"></span>
<span id="wizard" class="energy-link" data-content="You met a wizard./Speech/0/+1/0"></span>
<span id="rogue" class="energy-link" data-content="You met a rogue./Speech/0/+1/0"></span>
<span id="ask" class="energy-link" data-content="Ask Astarion./Speech/0/+1/0"></span>{
}](elseif: $sequence is 23)[(if: $just_said is not "ask")[(if: $toldStory is false)[You remember a story that happened on that beach, discovering as you do that you can tell it. Effortlessly. Using as many words as you need.](else:)[You tell a story that happened on that beach.](set: $toldStory to true)
](if: $just_said is "cleric")[You made a wary alliance with a devout woman who would not tell you what god she worshiped.
Astarion listens as you talk.
](elseif: $just_said is "wizard")[You met a wizard trapped in a swirling, violet vortex of magic. Dragged him out and said hello.
Astarion listens as you talk.
](elseif: $just_said is "rogue")[You met a man who charmingly threatened you at knife point and lied about having a pulse.
Astarion listens as you talk, smirking slightly.
](else:)[(if: $askedAstarion is false)[$astarion I'm not sure what you expect from the amnesiac on this roof.(set: $askedAstarion to true)
But he considers the world above him.](else:)[He considers that part of the world above you.]
<a class="ext" href="https://archiveofourown.org/works/50417158" target="_blank">He tells a story</a> about waking up warm from sunlight and utterly panicked. About scrambling for shade, but then finding himself unhurt.
About creeping to the edge of the shade, spreading his least-favorite hand on the ground and inching his fingertips into the light.
And then staring for a while at his fingers. Pretty and pale and sunlit.
]
|next>[Continue]{
}](elseif: $sequence is 24)[The words have weight. They are as real as this place, and as real as that world. They unfurl.
A sandbar curls up through the air, leading into the sky.
|returnStories>[Continue]{
(set: $progress to it+1)
(set: $escape to it+3)
(set: $placesSearched to it+(a: "beach"))
(display: "Sky Display")
}](elseif: $sequence is 25)[High up the world you see curves of stone, decorated with stalactites and glowing mushrooms. Protruding stone platforms and dark chasms with imperceptible depths that disappear into the sky. The darkness of the chasms is indistinguishable from the darkness between stars.
What |story>[happened there?]
<span id="mushroom" class="energy-link" data-content="You negotiated with mushroom people./Speech/0/+1/0"></span>
<span id="tower" class="energy-link" data-content="You explored an enchanted tower./Speech/0/+1/0"></span>
<span id="forge" class="energy-link" data-content="You used an ancient forge./Speech/0/+1/0"></span>
<span id="ask" class="energy-link" data-content="Ask Astarion./Speech/0/+1/0"></span>{
}](elseif: $sequence is 26)[(if: $just_said is not "ask")[(if: $toldStory is false)[You remember a story that happened in those caves, discovering as you do that you can tell it. Effortlessly. Using as many words as you need.](else:)[You tell a story that happened in those caves.](set: $toldStory to true)
](if: $just_said is "mushroom")[You wandered through a colony of myconids--one of the few peaceful communities in those dark caverns. Mushroom people who spoke mind-to-mind,