Restart Story

@import url(;\n\nbody { \n color: white !important; \n background-color: #070d1d !important;\n width: 95% !important;\n font-size: 0.95em !important;\n font-family: 'Press Start 2P', cursive;\n margin: 1em 1em 1em 1em;\n}\n\n.passage .title { display: none } \n\n.passage {\n font-size: 2.3em;\n line-height: 120%;\n margin-bottom: 0.85em;\n padding: 0.2em;\n background: transparent;\n color: white;\n}\n\n#sidebar { display: none;}\n\n#storyAuthor{font-size:90%;}\n\n#footer {display: none;}\n\nh1,h3 {\n color: grey;\n text-align:left;\n}\n\na.internalLink,a.externalLink,a.back,a.return {\n color:#deecef;\n font-weight: bold;\n line-height: 140%;\n text-decoration: underline;\n text-align: left;\n font-size: 130%\n}\n\na.internalLink:hover,a.externalLink:hover,a.back:hover,a.return:hover {\n color: #999;\n text-decoration: underline;\n text-align:left;\n}\n\n#floater { display: none; }
The Steel Goddess speaks to us from her great citadel in the lower heavens. \n\nOn each new cycle, she tells us Great Truths hidden in simple words. \n\nOur task is to determine her wisdom.\n\n<<getFile>>\n<<addLink "Listen Again" "" >>
Dan Cox
Mixed Signals
var XHR = null;\nvar XHR_Response = null;\nvar wordList = null;\n\nfunction checkXHR()\n{\n if (window.XMLHttpRequest)\n { XHR = new window.XMLHttpRequest(); }\n else if (window.ActiveXObject)\n { XHR = new window.ActiveXObject("Microsoft.XMLHTTP"); }\n else { XHR = false; }\n}\n\nfunction handleResponse() \n{\n if (XHR.readyState === 4) \n {\n if (XHR.status === 200) \n {\n XHR_Response = XHR.responseText;\n } \n else \n {\n alert('The XMLHttpRequest could not be made.');\n }\n }\n }\nfunction getFile(url) \n{\n checkXHR();\n if(XHR)\n {\n XHR.onreadystatechange = handleResponse;\n'GET',url,false);\n XHR.send();\n }\n else\n {\n alert("This browser does not have the XMlHttpRequest object.");\n }\n}\nfunction writePoetry()\n{\n var poetry = "<pre>";\n for(var k = 0; k < Math.random()*50; k++)\n {\n poetry += "<pre>";\n for(var i = 0; i < Math.random()*25; i++)\n { poetry += " "; }\n\n poetry += wordList[Math.floor(Math.random()*45400)];\n\n poetry += "</pre><br><pre>";\n \n for(var i = 0; i < Math.random()*25; i++)\n { poetry += " "; }\n\n poetry += wordList[Math.floor(Math.random()*45400)];\n }\n poetry += "</pre>";\n return poetry;\n}\n\n\nmacros['getFile'] = \n{\n handler: function(place, object, parameters)\n {\n getFile("words.txt");\n wordList = XHR_Response.split(" ");\n var poetry = writePoetry();\n new Wikifier(place, "<html>" + poetry + "</html>");\n }\n}\n\nmacros['writePoetry'] =\n{\n handler: function(place, object, parameters)\n {\n new Wikifier(place, "<html>" + writePoetry() + "</html>");\n }\n}\n\nTale.prototype.addPassage = function(title,tags,content) {\n var newPassage = document.createElement("div");\n = title;\n newPassage.setAttribute("tiddler",title);\n newPassage.setAttribute("tags",tags);\n newPassage.setAttribute("modifer","twee");\n\n if(newPassage.innerText) {newPassage.innerText = content;}\n else {newPassage.textContent = content;}\n\n $("storeArea").appendChild(newPassage);\n this.passages[title] = new Passage(title,$(title));\n};\n\nmacros['addLink'] = \n{\n handler: function(place, object, parameters)\n {\n var newID = Math.floor(Math.random()*65456);\n tale.addPassage("n"+newID,"","<<writePoetry>><<addLink 'Listen Again' '' >>");\n new Wikifier(place, "[["+parameters[0]+"|" + "n" + newID + "]]");\n }\n}