{
"description": [
"Small and square, the stone walls of this chamber are oriented so that each corner is at a cardinal direction. Four pillars occupy the ground midway between the center of the room and each corner, each balancing on the merest point, standing on a base formed of an inverted, four-sided pyramid. A dim, green-tinged white glow emanates from the semi-translucent base of each pillar, as if the pyramids were formed of some kind of luminescent crystal."
],
"id": 15619,
"location": "Icemule Trace",
"paths": [
"Obvious exits: none"
],
"tags": [
"travel waiting room"
],
"timeto": {
"14360": ";e open_regex = /^You open|^That is already open\\.$|^There doesn't seem to be any way to do that\\.$|^What were you referring to\\?|^I could not find what you were referring to\\./\n\nif UserVars.mapdb_use_day_pass == true\n $mapdb_day_passes ||= Hash.new\n unless DownstreamHook.list.include?('mapdb_day_pass_monitor')\n last_id = nil\n month_num = { 'Jan' => 1, 'Feb' => 2, 'Mar' => 3, 'Apr' => 4, 'May' => 5, 'Jun' => 6, 'Jul' => 7, 'Aug' => 8, 'Sep' => 9, 'Oct' => 10, 'Nov' => 11, 'Dec' => 12 }\n hook_proc = proc { |s|\n if s =~ /^Bold calligraphy states simply, \"This <a exist=\"(-?[0-9]+)\" noun=\"pass\">pass<\\/a> entitles the original purchaser to one \\(1\\) day of unlimited travel between the towns of (.+?) and (.+?), commencing/\n last_id = $1\n $mapdb_day_passes[last_id] = { :towns => [$2,$3] }\n elsif s =~ /^Bold red block letters spelling out \"EXPIRED\" appear to have been stamped across the face and reverse of the <a exist=\"(-?\\d+)\" noun=\"pass\">pass/\n $mapdb_day_passes[$1] = { :towns => [], :expires => Time.now }\n elsif s =~ /^\\[Your pass will expire on \\w+ (\\w+) *(\\d+) (\\d+):(\\d+):(\\d+) ET (\\d+)\\./\n if last_id\n $mapdb_day_passes[last_id][:expires] = Time.at(Time.new($6, month_num[$1], $2, $3, $4, $5, \"-05:00\").to_i)\n last_id = nil\n end\n elsif s =~ /quickly hands you a Chronomage day pass/ # fixme: xml\n UserVars.mapdb_find_day_pass = 'yes'\n end\n s\n }\n DownstreamHook.add('mapdb_day_pass_monitor', hook_proc)\n UserVars.mapdb_find_day_pass = 'yes'\n end\n\n if (UserVars.mapdb_find_day_pass == 'yes') and (bounty? !~ /^You have made contact with the child/) and ((bounty? !~ /provide a protective escort/) or (bounty? =~ /WAIT/))\n if (sack_name = UserVars.day_pass_sack)\n sack = (\n GameObj.inv.find { |obj| obj.noun == sack_name} ||\n GameObj.inv.find { |obj| obj.name == sack_name } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{Regexp.escape(sack_name)}$/i } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{sack_name.split(' ').collect { |n| Regexp.escape(n) }.join(\".*\\\\b\")}/i }\n )\n if sack\n close_sack = false\n if sack.contents.nil?\n open_result = dothistimeout \"open ##{sack.id}\", 10, open_regex\n if open_result =~ /^You open/\n close_sack = true\n else\n dothistimeout \"look in ##{sack.id}\", 10, /In the .*? you see/\n end\n end\n if sack.contents\n $mapdb_day_passes.keys.each { |id|\n unless sack.contents.any? { |obj| obj.id == id }\n $mapdb_day_passes.delete(id)\n end\n }\n sack.contents.find_all { |obj| obj.name == 'Chronomage day pass' }.each { |pass|\n next if $mapdb_day_passes[pass.id]\n dothistimeout \"look ##{pass.id}\", 10, /^Bold calligraphy states simply|^Bold red block letters spelling out \"EXPIRED\"|^I could not find/\n }\n UserVars.mapdb_find_day_pass = 'no'\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"Failed to find contents of day_pass_sack: #{sack_name}; go2 will not use Chronomage day pass travel.\"\n end\n end\n if close_sack\n dothistimeout \"close ##{sack.id}\", 3, /^You close/\n end\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"warning: Failed to find day_pass_sack: #{sack_name}; go2 will not use Chronomage day pass travel.\"\n end\n end\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"warning: day_pass_sack is not set; go2 will not use Chronomage day pass travel.\"\n echo \"Specify the location of your Chronomage day passes with #{$clean_lich_char}vars set day_pass_sack=CONTAINER\"\n end\n end\n end\n if $mapdb_day_passes.any? { |id,h| h[:towns].include?(\"Solhaven\") and h[:towns].include?('Icemule Trace') and h[:expires] > (Time.now + 10) }\n 0.8\n elsif UserVars.mapdb_buy_day_pass.to_s =~ /^(yes|true)$|\\bimt,sol\\b/i\n 8.8\n else\n nil\n end\nelse\n nil\nend\n\n",
"8634": ";e open_regex = /^You open|^That is already open\\.$|^There doesn't seem to be any way to do that\\.$|^What were you referring to\\?|^I could not find what you were referring to\\./\n\nif UserVars.mapdb_use_day_pass == true\n $mapdb_day_passes ||= Hash.new\n unless DownstreamHook.list.include?('mapdb_day_pass_monitor')\n last_id = nil\n month_num = { 'Jan' => 1, 'Feb' => 2, 'Mar' => 3, 'Apr' => 4, 'May' => 5, 'Jun' => 6, 'Jul' => 7, 'Aug' => 8, 'Sep' => 9, 'Oct' => 10, 'Nov' => 11, 'Dec' => 12 }\n hook_proc = proc { |s|\n if s =~ /^Bold calligraphy states simply, \"This <a exist=\"(-?[0-9]+)\" noun=\"pass\">pass<\\/a> entitles the original purchaser to one \\(1\\) day of unlimited travel between the towns of (.+?) and (.+?), commencing/\n last_id = $1\n $mapdb_day_passes[last_id] = { :towns => [$2,$3] }\n elsif s =~ /^Bold red block letters spelling out \"EXPIRED\" appear to have been stamped across the face and reverse of the <a exist=\"(-?\\d+)\" noun=\"pass\">pass/\n $mapdb_day_passes[$1] = { :towns => [], :expires => Time.now }\n elsif s =~ /^\\[Your pass will expire on \\w+ (\\w+) *(\\d+) (\\d+):(\\d+):(\\d+) ET (\\d+)\\./\n if last_id\n $mapdb_day_passes[last_id][:expires] = Time.at(Time.new($6, month_num[$1], $2, $3, $4, $5, \"-05:00\").to_i)\n last_id = nil\n end\n elsif s =~ /quickly hands you a Chronomage day pass/ # fixme: xml\n UserVars.mapdb_find_day_pass = 'yes'\n end\n s\n }\n DownstreamHook.add('mapdb_day_pass_monitor', hook_proc)\n UserVars.mapdb_find_day_pass = 'yes'\n end\n\n if (UserVars.mapdb_find_day_pass == 'yes') and (bounty? !~ /^You have made contact with the child/) and ((bounty? !~ /provide a protective escort/) or (bounty? =~ /WAIT/))\n if (sack_name = UserVars.day_pass_sack)\n sack = (\n GameObj.inv.find { |obj| obj.noun == sack_name} ||\n GameObj.inv.find { |obj| obj.name == sack_name } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{Regexp.escape(sack_name)}$/i } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{sack_name.split(' ').collect { |n| Regexp.escape(n) }.join(\".*\\\\b\")}/i }\n )\n if sack\n close_sack = false\n if sack.contents.nil?\n open_result = dothistimeout \"open ##{sack.id}\", 10, open_regex\n if open_result =~ /^You open/\n close_sack = true\n else\n dothistimeout \"look in ##{sack.id}\", 10, /In the .*? you see/\n end\n end\n if sack.contents\n $mapdb_day_passes.keys.each { |id|\n unless sack.contents.any? { |obj| obj.id == id }\n $mapdb_day_passes.delete(id)\n end\n }\n sack.contents.find_all { |obj| obj.name == 'Chronomage day pass' }.each { |pass|\n next if $mapdb_day_passes[pass.id]\n dothistimeout \"look ##{pass.id}\", 10, /^Bold calligraphy states simply|^Bold red block letters spelling out \"EXPIRED\"|^I could not find/\n }\n UserVars.mapdb_find_day_pass = 'no'\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"Failed to find contents of day_pass_sack: #{sack_name}; go2 will not use Chronomage day pass travel.\"\n end\n end\n if close_sack\n dothistimeout \"close ##{sack.id}\", 3, /^You close/\n end\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"warning: Failed to find day_pass_sack: #{sack_name}; go2 will not use Chronomage day pass travel.\"\n end\n end\n else\n if $mapdb_last_day_pass_message.nil? or ((Time.now - $mapdb_last_day_pass_message) > 5)\n $mapdb_last_day_pass_message = Time.now\n echo \"warning: day_pass_sack is not set; go2 will not use Chronomage day pass travel.\"\n echo \"Specify the location of your Chronomage day passes with #{$clean_lich_char}vars set day_pass_sack=CONTAINER\"\n end\n end\n end\n if $mapdb_day_passes.any? { |id,h| h[:towns].include?(\"Wehnimer's Landing\") and h[:towns].include?('Icemule Trace') and h[:expires] > (Time.now + 10) }\n 0.8\n elsif UserVars.mapdb_buy_day_pass.to_s =~ /^(yes|true)$|\\bimt,wl\\b/i\n 8.8\n else\n nil\n end\nelse\n nil\nend\n\n",
"8916": 0.2
},
"title": [
"[Loci Workshop, Confluence]"
],
"uid": [
112037
],
"wayto": {
"14360": ";e open_regex = /^You open|^That is already open\\.$|^There doesn't seem to be any way to do that\\.$|^What were you referring to\\?|^I could not find what you were referring to\\./\nget_regex = /^You (?:shield the opening of .*? from view as you |discreetly |carefully |deftly )?(?:remove|draw|grab|reach|slip|tuck|retrieve|already have|unsheathe|detach)|^Get what\\?$|^Why don't you leave some for others\\?$|^You need a free hand|^You already have that/\nput_regex = /^You (?:attempt to shield .*? from view as you |discreetly |carefully |absent-mindedly )?(?:put|place|slip|tuck|add|hang|drop|untie your|find an incomplete bundle|wipe off .*? and sheathe)|^A sigh of grateful pleasure can be heard as you feed .*? to your|^As you place|^I could not find what you were referring to\\.$|^Your bundle would be too large|^The .+ is too large to be bundled\\.|^As you place your|^The .*? is already a bundle|^Your .*? won't fit in .*?\\.$|^You can't .+ It's closed!$|^You can't put/\n\nsack_name = UserVars.day_pass_sack\nsack = (\n GameObj.inv.find { |obj| obj.noun == sack_name} ||\n GameObj.inv.find { |obj| obj.name == sack_name } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{Regexp.escape(sack_name)}$/i } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{sack_name.split(' ').collect { |n| Regexp.escape(n) }.join(\".*\\\\b\")}/i }\n)\nclose_sack = false\nif sack.contents.nil?\n open_result = dothistimeout \"open ##{sack.id}\", 10, open_regex\n if open_result =~ /^You open/\n close_sack = true\n else\n dothistimeout \"look in ##{sack.id}\", 10, /In the .*? you see/\n end\nend\nempty_hand\n$mapdb_day_passes.keys.each { |id|\n if $mapdb_day_passes[id][:expires] < (Time.now - 10)\n dothistimeout \"_drag ##{id} drop\", 2, /^As you let go|^You drop/\n $mapdb_day_passes.delete(id)\n end\n}\npass_id = $mapdb_day_passes.keys.find { |id| $mapdb_day_passes[id][:towns].include?(\"Solhaven\") and $mapdb_day_passes[id][:towns].include?('Icemule Trace') and $mapdb_day_passes[id][:expires] > (Time.now + 10) }\nif pass_id\n dothistimeout \"get ##{pass_id}\", 10, get_regex\nelsif UserVars.mapdb_buy_day_pass.to_s =~ /^(yes|true)$|\\bimt,sol\\b/i\n move 'go corridor'\n fput 'unhide' if hidden? or invisible?\n dothistimeout \"ask halfling for solhaven\", 10, /says to you/\n result = dothistimeout \"ask halfling for solhaven\", 10, /don't have enough|quickly hands you/\n if (result =~ /don't have enough/) and $go2_get_silvers\n [ 'out', 'go gate', 'southeast', 'southeast', 'northeast', 'southeast', 'south', 'west', 'south', 'east', 'east', 'south', 'south', 'east', 'north', 'north', 'go archway' ].each { |dir| move dir }\n dothistimeout 'withdraw 5000', 10, /carefully records|through the books/\n [ 'out', 'south', 'south', 'west', 'north', 'north', 'west', 'west', 'north', 'east', 'north', 'northwest', 'southwest', 'northwest', 'northwest', 'go gate', 'go door' ].each { |dir| move dir }\n fput 'unhide' if hidden? or invisible?\n result = dothistimeout \"ask halfling for solhaven\", 10, /says to you|don't have enough|quickly hands you/\n if result =~ /says to you/\n result = dothistimeout \"ask halfling for solhaven\", 10, /don't have enough|quickly hands you/\n end\n end\n if result =~ /quickly hands you/\n if GameObj.right_hand.noun == 'pass'\n pass_id = GameObj.right_hand.id\n elsif GameObj.left_hand.noun == 'pass'\n pass_id = GameObj.left_hand.id\n end\n fput \"look ##{pass_id}\"\n move 'go corridor'\n elsif result =~ /don't have enough/\n echo 'error: You are too poor to buy Chronomage day passes. Turning off buy_day_pass setting.'\n sleep 3\n UserVars.mapdb_buy_day_pass = 'no'\n end\nend\nif pass_id\n result = dothistimeout \"raise ##{pass_id}\", 10, /whirlwind of color subsides|pass is expired|not valid for departures|As you go to raise your pass, you realize|Raise what/\n dothistimeout \"_drag ##{pass_id} ##{sack.id}\", 10, put_regex\nelse\n $mapdb_day_passes.clear\n UserVars.mapdb_find_day_pass = 'yes'\n $restart_go2 = true\nend\nfill_hand\nif close_sack\n dothistimeout \"close ##{sack.id}\", 2, /^You close/\nend\n\n",
"8634": ";e open_regex = /^You open|^That is already open\\.$|^There doesn't seem to be any way to do that\\.$|^What were you referring to\\?|^I could not find what you were referring to\\./\nget_regex = /^You (?:shield the opening of .*? from view as you |discreetly |carefully |deftly )?(?:remove|draw|grab|reach|slip|tuck|retrieve|already have|unsheathe|detach)|^Get what\\?$|^Why don't you leave some for others\\?$|^You need a free hand|^You already have that/\nput_regex = /^You (?:attempt to shield .*? from view as you |discreetly |carefully |absent-mindedly )?(?:put|place|slip|tuck|add|hang|drop|untie your|find an incomplete bundle|wipe off .*? and sheathe)|^A sigh of grateful pleasure can be heard as you feed .*? to your|^As you place|^I could not find what you were referring to\\.$|^Your bundle would be too large|^The .+ is too large to be bundled\\.|^As you place your|^The .*? is already a bundle|^Your .*? won't fit in .*?\\.$|^You can't .+ It's closed!$|^You can't put/\n\nsack_name = UserVars.day_pass_sack\nsack = (\n GameObj.inv.find { |obj| obj.noun == sack_name} ||\n GameObj.inv.find { |obj| obj.name == sack_name } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{Regexp.escape(sack_name)}$/i } ||\n GameObj.inv.find { |obj| obj.name =~ /\\b#{sack_name.split(' ').collect { |n| Regexp.escape(n) }.join(\".*\\\\b\")}/i }\n)\nclose_sack = false\nif sack.contents.nil?\n open_result = dothistimeout \"open ##{sack.id}\", 10, open_regex\n if open_result =~ /^You open/\n close_sack = true\n else\n dothistimeout \"look in ##{sack.id}\", 10, /In the .*? you see/\n end\nend\nempty_hand\n$mapdb_day_passes.keys.each { |id|\n if $mapdb_day_passes[id][:expires] < (Time.now - 10)\n dothistimeout \"_drag ##{id} drop\", 2, /^As you let go|^You drop/\n $mapdb_day_passes.delete(id)\n end\n}\npass_id = $mapdb_day_passes.keys.find { |id| $mapdb_day_passes[id][:towns].include?(\"Wehnimer's Landing\") and $mapdb_day_passes[id][:towns].include?('Icemule Trace') and $mapdb_day_passes[id][:expires] > (Time.now + 10) }\nif pass_id\n dothistimeout \"get ##{pass_id}\", 10, get_regex\nelsif UserVars.mapdb_buy_day_pass.to_s =~ /^(yes|true)$|\\bimt,wl\\b/i\n move 'go corridor'\n fput 'unhide' if hidden? or invisible?\n dothistimeout \"ask halfling for wehnimer\", 10, /says to you/\n result = dothistimeout \"ask halfling for wehnimer\", 10, /don't have enough|quickly hands you/\n if (result =~ /don't have enough/) and $go2_get_silvers\n [ 'out', 'go gate', 'southeast', 'southeast', 'northeast', 'southeast', 'south', 'west', 'south', 'east', 'east', 'south', 'south', 'east', 'north', 'north', 'go archway' ].each { |dir| move dir }\n dothistimeout 'withdraw 5000', 10, /carefully records|through the books/\n [ 'out', 'south', 'south', 'west', 'north', 'north', 'west', 'west', 'north', 'east', 'north', 'northwest', 'southwest', 'northwest', 'northwest', 'go gate', 'go door' ].each { |dir| move dir }\n fput 'unhide' if hidden? or invisible?\n result = dothistimeout \"ask halfling for wehnimer\", 10, /says to you|don't have enough|quickly hands you/\n if result =~ /says to you/\n result = dothistimeout \"ask halfling for wehnimer\", 10, /don't have enough|quickly hands you/\n end\n end\n if result =~ /quickly hands you/\n if GameObj.right_hand.noun == 'pass'\n pass_id = GameObj.right_hand.id\n elsif GameObj.left_hand.noun == 'pass'\n pass_id = GameObj.left_hand.id\n end\n fput \"look ##{pass_id}\"\n move 'go corridor'\n elsif result =~ /don't have enough/\n echo 'error: You are too poor to buy Chronomage day passes. Turning off buy_day_pass setting.'\n sleep 3\n UserVars.mapdb_buy_day_pass = 'no'\n end\nend\nif pass_id\n result = dothistimeout \"raise ##{pass_id}\", 10, /whirlwind of color subsides|pass is expired|not valid for departures|As you go to raise your pass, you realize|Raise what/\n dothistimeout \"_drag ##{pass_id} ##{sack.id}\", 10, put_regex\nelse\n $mapdb_day_passes.clear\n UserVars.mapdb_find_day_pass = 'yes'\n $restart_go2 = true\nend\nfill_hand\nif close_sack\n dothistimeout \"close ##{sack.id}\", 2, /^You close/\nend\n\n",
"8916": "go corridor"
}
}