kindling
by icaruslived
<<set $maleNames = [ 'John', 'Mark', 'Carl', 'Stephen', 'Jason', 'Boris', 'Colin' ]\n , $femaleNames = [ 'Madelaine', 'Jenna', 'Susan', 'Fiona', 'Elizabeth', 'Clarisse', 'Alice' ]\n , $loopLines = [ 'The flames crackle, and sputter. Demons rush about, seeking more fuel.'\n , 'The flames roar, bright and strong, drawing many of the denizens of hell to gaze at them.'\n , 'You catch up with dear old Azazel on the banks of a flaming river.'\n , "Lilith, wearing a cat's form this century, stops by to compliment your work."\n , 'There is a minor commotion at the gates to the world above, but it is soon settled, with only two dead.'\n , 'Some demons wish you to arbitrate their dispute. You send them home, for you have work to do.'\n , 'A messenger brings you the excellent news of a new mortal war.'\n , 'Belial has lodged a complaint about the banality of the mortal world, again.'\n , 'You spend some time calling forth more hellroom, such that the newer demons have someplace to live.'\n ]\n , $sinners = tale.lookup("tags", "sinner").map(function(x) { return x.title; }) >>
History.initPRNG();\n\nconfig.displayPassageTitles = false;\nconfig.disableHistoryTracking = false;\nconfig.saves.isAllowed = function() { return false; };\n\n$('#menu-saves').css({ display: 'none' });\n$('#menu-restart').unbind('click').click(state.restart.bind(state));\n\nString.prototype.toTitleCase = function() { return this[0].toUpperCase() + this.slice(1); };\nArray.prototype.remove = Array.prototype.remove || function(needle) {\n var index = this.indexOf(needle);\n this.splice(index, 1);\n return this;\n};\nArray.prototype.randomWOR = function() {\n var ret = this.random();\n this.remove(ret);\n return ret;\n};\nArray.prototype.clone = Array.prototype.clone || function() { return this.slice(); }\n\nmacros.callout = {\n handler: function(place, name, params, parser) {\n params[1] = params[1] || params[0].toTitleCase();\n params[2] = params[2] === 'sin' && tags(params[1]).contains(state.active.variables.style) ? 'sin special' : (params[2] || '');\n\n new Wikifier(place, '<span class="' + params[2] + '"><<click ' + params[0] + '>><<replace ".footer">><div id="callout"><<timedinsert 10ms>><<display ' + params[1] + '>><<endtimedinsert>></div><</replace>><</click>></span>');\n },\n init: function() {}\n};
(function(){version.extensions.replaceMacrosCombined={major:1,minor:1,revision:4};var nullobj={handler:function(){}};function showVer(n,notrans){if(!n){return\n}n.innerHTML="";new Wikifier(n,n.tweecode);n.setAttribute("data-enabled","true");n.style.display="inline";n.classList.remove("revision-span-out");\nif(!notrans){n.classList.add("revision-span-in");if(n.timeout){clearTimeout(n.timeout)}n.timeout=setTimeout(function(){n.classList.remove("revision-span-in");\nn=null},1)}}function hideVer(n,notrans){if(!n){return}n.setAttribute("data-enabled","false");n.classList.remove("revision-span-in");\nif(n.timeout){clearTimeout(n.timeout)}if(!notrans){n.classList.add("revision-span-out");n.timeout=setTimeout(function(){if(n.getAttribute("data-enabled")=="false"){n.classList.remove("revision-span-out");\nn.style.display="none";n.innerHTML=""}n=null},1000)}else{n.style.display="none";n.innerHTML="";n=null}}function tagcontents(b,starttags,desttags,endtags,k){var l=0,c="",tg,a,i;\nfunction tagfound(i,e){for(var j=0;j<e.length;j++){if(a.indexOf("<<"+e[j],i)==i){return e[j]}}}a=b.source.slice(k);for(i=0;\ni<a.length;i++){if(tg=tagfound(i,starttags)){l++}else{if((tg=tagfound(i,desttags))&&l==0){b.nextMatch=k+i+tg.length+4;return[c,tg]\n}else{if(tg=tagfound(i,endtags)){l--;if(l<0){return null}}}}c+=a.charAt(i)}return null}var begintags=[];var endtags=[];function revisionSpanHandler(g,e,f,b){var k=b.source.indexOf(">>",b.matchStart)+2,vsns=[],vtype=e,flen=f.length,becomes,c,cn,m,h,vsn;\nfunction mkspan(vtype){h=insertElement(m,"span",null,"revision-span "+vtype);h.setAttribute("data-enabled",false);h.style.display="none";\nh.tweecode="";return h}if(this.shorthand&&flen){while(f.length>0){vsns.push([f.shift(),(this.flavour=="insert"?"gains":"becomes")])\n}}else{if(this.flavour=="insert"||(this.flavour=="continue"&&this.trigger=="time")){vsns.push(["","becomes"])}}if(this.flavour=="continue"&&flen){b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),vtype])}else{becomes=["becomes","gains"];c=tagcontents(b,begintags,becomes.concat(endtags),endtags,k);\nif(c&&endtags.indexOf(c[1])==-1){while(c){vsns.push(c);c=tagcontents(b,begintags,becomes,endtags,b.nextMatch)}c=tagcontents(b,begintags,["end"+e],endtags,b.nextMatch)\n}if(!c){throwError(g,"can't find matching end"+e);return}vsns.push(c);if(this.flavour=="continue"){k=b.nextMatch;b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),""])}}if(this.flavour=="remove"){vsns.push(["","becomes"])}cn=0;m=insertElement(g,"span",null,e);\nm.setAttribute("data-flavour",this.flavour);h=mkspan("initial");vsn=vsns.shift();h.tweecode=vsn[0];showVer(h,true);while(vsns.length>0){if(vsn){vtype=vsn[1]\n}vsn=vsns.shift();h=mkspan(vtype);h.tweecode=vsn[0]}if(typeof this.setup=="function"){this.setup(m,g,f)}}function quantity(m){return(m.children.length-1)+(m.getAttribute("data-flavour")=="remove")\n}function revisionSetup(m,g,f){m.className+=" "+f[0].replace(" ","_")}function keySetup(m,g,f){var key=f[0];m.setEventListener("keydown",function l(e){var done=!revise("revise",m);\nif(done){m.removeEventListener("keydown",l)}})}function timeSetup(m,g,f){function cssTimeUnit(s){if(typeof s=="string"){if(s.slice(-2).toLowerCase()=="ms"){return Number(s.slice(0,-2))||0\n}else{if(s.slice(-1).toLowerCase()=="s"){return Number(s.slice(0,-1))*1000||0}}}throwError(g,s+" isn't a CSS time unit");\nreturn 0}var tm=cssTimeUnit(f[0]);setTimeout(function timefn(){var done=!revise("revise",m);if(!done){setTimeout(timefn,tm)\n}},tm)}function hoverSetup(m){var fn,noMouseEnter=(document.head.onmouseenter!==null),m1=m.children[0],m2=m.children[1];if(!m1||!m2){return\n}m1.onmouseenter=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revise",this.parentNode)}};m2.onmouseleave=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revert",this.parentNode)\n}};if(noMouseEnter){fn=function(n){return function(e){if(!event.relatedTarget||(event.relatedTarget!=this&&!(this.compareDocumentPosition(event.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY))){this[n]()\n}}};m1.onmouseover=fn("onmouseenter");m2.onmouseout=fn("onmouseleave")}m=null}function mouseSetup(m){var evt=(document.head.onmouseenter===null?"onmouseenter":"onmouseover");\nm[evt]=function(){var done=!revise("revise",this);if(done){this[evt]=null}};m=null}function linkSetup(m,g,f){var l=Wikifier.createInternalLink(),p=m.parentNode;\nl.className="internalLink replaceLink";p.insertBefore(l,m);l.insertBefore(m,null);l.onclick=function(){var p,done=false;if(m&&m.parentNode==this){done=!revise("revise",m);\nscrollWindowTo(m)}if(done){this.parentNode.insertBefore(m,this);this.parentNode.removeChild(this)}};l=null}function visitedSetup(m,g,f){var i,done,shv=state.history[0].variables,os="once seen",d=(m.firstChild&&(this.flavour=="insert"?m.firstChild.nextSibling:m.firstChild).tweecode);\nshv[os]=shv[os]||{};if(d&&!shv[os].hasOwnProperty(d)){shv[os][d]=1}else{for(i=shv[os][d];i>0&&!done;i--){done=!revise("revise",m,true)\n}if(shv[os].hasOwnProperty(d)){shv[os][d]+=1}}}[{name:"insert",flavour:"insert",trigger:"link",setup:linkSetup},{name:"timedinsert",flavour:"insert",trigger:"time",setup:timeSetup},{name:"insertion",flavour:"insert",trigger:"revisemacro",setup:revisionSetup},{name:"later",flavour:"insert",trigger:"visited",setup:visitedSetup},{name:"keyinsert",flavour:"insert",trigger:"key",setup:keySetup},{name:"replace",flavour:"replace",trigger:"link",setup:linkSetup},{name:"timedreplace",flavour:"replace",trigger:"time",setup:timeSetup},{name:"mousereplace",flavour:"replace",trigger:"mouse",setup:mouseSetup},{name:"hoverreplace",flavour:"replace",trigger:"hover",setup:hoverSetup},{name:"revision",flavour:"replace",trigger:"revisemacro",setup:revisionSetup},{name:"keyreplace",flavour:"replace",trigger:"key",setup:keySetup},{name:"timedremove",flavour:"remove",trigger:"time",setup:timeSetup},{name:"mouseremove",flavour:"remove",trigger:"mouse",setup:mouseSetup},{name:"hoverremove",flavour:"remove",trigger:"hover",setup:hoverSetup},{name:"removal",flavour:"remove",trigger:"revisemacro",setup:revisionSetup},{name:"once",flavour:"remove",trigger:"visited",setup:visitedSetup},{name:"keyremove",flavour:"remove",trigger:"key",setup:keySetup},{name:"continue",flavour:"continue",trigger:"link",setup:linkSetup},{name:"timedcontinue",flavour:"continue",trigger:"time",setup:timeSetup},{name:"mousecontinue",flavour:"continue",trigger:"mouse",setup:mouseSetup},{name:"keycontinue",flavour:"continue",trigger:"key",setup:keySetup},{name:"cycle",flavour:"cycle",trigger:"revisemacro",setup:revisionSetup},{name:"mousecycle",flavour:"cycle",trigger:"mouse",setup:mouseSetup},{name:"timedcycle",flavour:"cycle",trigger:"time",setup:timeSetup},{name:"keycycle",flavour:"replace",trigger:"key",setup:keySetup}].forEach(function(e){e.handler=revisionSpanHandler;\ne.shorthand=(["link","mouse","hover"].indexOf(e.trigger)>-1);macros[e.name]=e;macros["end"+e.name]=nullobj;begintags.push(e.name);\nendtags.push("end"+e.name)});function insideDepartingSpan(elem){var r=elem.parentNode;while(!r.classList.contains("passage")){if(r.classList.contains("revision-span-out")){return true\n}r=r.parentNode}}function reviseAll(rt,rname){var rall=document.querySelectorAll(".passage [data-flavour]."+rname),ret=false;\nfor(var i=0;i<rall.length;i++){if(!insideDepartingSpan(rall[i])){ret=revise(rt,rall[i])||ret}}return ret}function revise(rt,r,notrans){var ind2,curr,next,ind=-1,rev=(rt=="revert"),rnd=(rt.indexOf("random")>-1),fl=r.getAttribute("data-flavour"),rc=r.childNodes,cyc=(fl=="cycle"),rcl=rc.length-1;\nfunction doToGainerSpans(n,fn){for(var k=n-1;k>=0;k--){if(rc[k+1].classList.contains("gains")){fn(rc[k],notrans)}else{break\n}}}for(var k=0;k<=rcl;k++){if(rc[k].getAttribute("data-enabled")=="true"){ind=k}}if(rev){ind-=1}curr=(ind>=0?rc[ind]:(cyc?rc[rcl]:null));\nind2=ind;if(rnd){ind2=(ind+(Math.floor(Math.random()*rcl)))%rcl}next=((ind2<rcl)?rc[ind2+1]:(cyc?rc[0]:null));var docurr=(rev?showVer:hideVer);\nvar donext=(rev?hideVer:showVer);var currfn=function(){if(!(next&&next.classList.contains("gains"))||rnd){docurr(curr,notrans);\ndoToGainerSpans(ind,docurr,notrans)}};var nextfn=function(){donext(next,notrans);if(rnd){doToGainerSpans(ind2+1,donext,notrans)\n}};if(!rev){currfn();nextfn()}else{nextfn();currfn()}return(cyc?true:(rev?(ind>0):(ind2<rcl-1)))}macros.revert=macros.revise=macros.randomise=macros.randomize={handler:function(a,b,c){var l,rev,rname;\nfunction disableLink(l){l.style.display="none"}function enableLink(l){l.style.display="inline"}function updateLink(l){if(l.className.indexOf("random")>-1){enableLink(l);\nreturn}var rall=document.querySelectorAll(".passage [data-flavour]."+rname),cannext,canprev,i,ind,r,fl;for(i=0;i<rall.length;\ni++){r=rall[i],fl=r.getAttribute("data-flavour");if(insideDepartingSpan(r)){continue}if(fl=="cycle"){cannext=canprev=true\n}else{if(r.firstChild.getAttribute("data-enabled")==!1+""){canprev=true}if(r.lastChild.getAttribute("data-enabled")==!1+""){cannext=true\n}}}var can=(l.classList.contains("revert")?canprev:cannext);(can?enableLink:disableLink)(l)}function toggleText(w){w.classList.toggle(rl+"Enabled");\nw.classList.toggle(rl+"Disabled");w.style.display=((w.style.display=="none")?"inline":"none")}var rl="reviseLink";if(c.length<2){throwError(a,b+" macro needs 2 parameters");\nreturn}rname=c.shift().replace(" ","_");l=Wikifier.createInternalLink(a,null);l.className="internalLink "+rl+" "+rl+"_"+rname+" "+b;\nvar v="";var end=false;var out=false;if(c.length>1&&c[0][0]=="$"){v=c[0].slice(1);c.shift()}switch(c[c.length-1]){case"end":end=true;\nc.pop();break;case"out":out=true;c.pop();break}var h=state.history[0].variables;for(var i=0;i<c.length;i++){var on=(i==Math.max(c.indexOf(h[v]),0));\nvar d=insertElement(null,"span",null,rl+((on)?"En":"Dis")+"abled");if(on){h[v]=c[i];l.setAttribute("data-cycle",i)}else{d.style.display="none"\n}insertText(d,c[i]);l.appendChild(d)}l.onclick=function(){reviseAll(b,rname);var t=this.childNodes,u=this.getAttribute("data-cycle")-0,m=t.length,n,lall,i;\nif((end||out)&&u==m-(end?2:1)){if(end){n=this.removeChild(t[u+1]);n.className=rl+"End";n.style.display="inline";this.parentNode.replaceChild(n,this)\n}else{this.parentNode.removeChild(this);return}}else{toggleText(t[u]);u=(u+1)%m;if(v){h[v]=c[u]}toggleText(t[u]);this.setAttribute("data-cycle",u)\n}lall=document.getElementsByClassName(rl+"_"+rname);for(i=0;i<lall.length;i++){updateLink(lall[i])}};l=null}};macros.mouserevise=macros.hoverrevise={handler:function(a,b,c,d){var endtags=["end"+b],evt=(window.onmouseenter===null?"onmouseenter":"onmouseover"),t=tagcontents(d,[b],endtags,endtags,d.source.indexOf(">>",d.matchStart)+2);\nif(t){var rname=c[0].replace(" ","_"),h=insertElement(a,"span",null,"hoverrevise hoverrevise_"+rname),f=function(){var done=!reviseAll("revise",rname);\nif(b!="hoverrevise"&&done){this[evt]=null}};new Wikifier(h,t[0]);if(b=="hoverrevise"){h.onmouseover=f;h.onmouseout=function(){reviseAll("revert",rname)\n}}else{h[evt]=f}h=null}}};macros.instantrevise={handler:function(a,b,c,d){reviseAll("revise",c[0].replace(" ","_"))}};macros.endmouserevise=nullobj;\nmacros.endhoverrevise=nullobj}());
#callout { padding-top: 50px }\n.sin a { color: firebrick }\n.special.sin a { color: crimson !important; font-size: 120% }\n.throwing { font-style: italic }\n.remembrance { font-style: italic; font-size: 80% }\n.body.content { max-width: 666px }\n\n.revision-span-in {\n opacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n transition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n position:absolute;\n opacity: 0;\n}
<<widget "sin">><<callout $args[0] $args[1] sin>><</widget>>\n<<widget "kindling">><<if $first>><<if $args[2] === 'uppercase'>>As<<else>>as<</if>> always, you do not need to provide any <<link kindling $args[1]>><<else>><<print $args[0]>><</if>><</widget>>\n<<widget "kindled">><<if $first>><<print $args[0]>>\n\n<</if>><</widget>>\n<<widget "remembrance">><<if $args[1]>><div class="remembrance"><<set $remembrance = '(' + $args[0] + $args[1].toLowerCase() + $args[2] + ')'>><<timedinsert 2.5s>><<print $remembrance>><<endtimedinsert>></div><</if>><</widget>>
//(Trigger warnings: adultery, bulimia, general devilry.)//
Hello!\n\nYou are the devil.\n\nWhat would you like to be called?\n\n[[Satan, Prince of Lies and Deceiver of Men, and Women Too These Days|Satan]]\n\n[[Moloch, He Who Demands The Sacrifice Of All That Is Ever Held Dear|Moloch]]\n\n[[Lucifer, Lightbringer Extraordinaire And Provider Of Enough Rope|Lucifer]]\n\n[[Sati, She Who Is Everything And Anything That Binds You To Self-Destruction|Sati]]
A classic title, deliciously proclaiming all to be your toys.\n\n[[Frustruatingly, everyone just calls you the devil.|Loop][$style="trickery"]]
A fearsome title, red in tooth, and claw, and strip mines, and money.\n\n[[Too bad everyone just calls you the devil.|Loop][$style="multipolar"]]
It is so much fun to watch them play with powers beyond their ken, isn't it?\n\n[[Annoyingly, everyone just calls you the devil.|Loop][$style="technology"]]
Humans have such beautiful traditions and tribalisms, do they not?\n\n[[Too bad everyone just calls you the devil.|Loop][$style="antistrategic"]]
The wild, flaming heart of hell, burning up lives and loves and everything in between.
<<nobr>>\n<<if tags("Wrath").contains($style) >>\n The most beautiful sin, as they can do naught but destroy.\n<<else>>\n Destruction without creation, senseless, nonsense, and so easily kindled.\n<</if>>\n<</nobr>>\n\n<<remembrance "how much was smashed, into how many pieces, while " $economist "'s core was burning?">>
<<nobr>>\n<<if tags("Sloth").contains($style) >>\n You love how there's no one to blame, in these cases. How the mortals simply build structures that demand the sacrifice of all they value.\n<<else>>\n Mortals never do more than they have to, however much they talk of what they should.\n<</if>>\n<</nobr>>\n\n<<remembrance "perhaps " $neet " would have flared, any, if he had known it was a sacrifice.">>
<<nobr>>\n<<if tags("Pride").contains($style) >>\n You never, ever, //never// need to lie to the proud, for they will do that themselves.\n<<else>>\n They will often strive, try, work so incredibly hard, to light themselves on fire.\n<</if>>\n<</nobr>>\n\n<<remembrance "" $bulimic " was proud, too, wasn't she, of the flower she had formed?">>
<<nobr>>\n<<if tags("Greed").contains($style) >>\n Ah, for all loves to be of endless oil and stone, for all souls to be of electricity and banks.\n<<else>>\n Greed is about wanting nothing, but everything, and then more, and more.\n<</if>>\n<</nobr>>\n\n<<remembrance "president " $president " wanted, too, so much. too much.">>
<<nobr>>\n<<if tags("Gluttony").contains($style) >>\n Mortals could never quite conceive of why they should not build their own temptations.\n<<else>>\n Fat. Distended. Indulgence.\n<</if>>\n<</nobr>>\n\n<<remembrance "and " $adulterers " had, of course, drunk so deeply of their desires.">>
<<nobr>>\n<<if tags("Envy").contains($style) >>\n Envy is such a magnificently blooming sin - the more you know of, the more you can covet.\n<<else>>\n Mortals are so often unable to distinguish between seeing, and wanting, and being.\n<</if>>\n<</nobr>>\n\n<<remembrance "" $activist ", too, flared hot, sharp, and green, did she not?">>
<<nobr>>\n<<if tags("Lust").contains($style) >>\n Breathing deeply, you can smell their self-hatred, and regret.\n<<else>>\n You breathe deeply of their vain, in vain, attempts to ignore what they are doing.\n<</if>>\n<</nobr>>\n\n<<remembrance "and manager " $capitalist " lusted after the coin, though he did not want to">>
<<silently>>\n<<set $sunday = visited() % 7 === 0\n , $availableSinners = $sinners.filter(function(title) { return !visited(title); })\n , $first = !visitedTags("sinned")\n>>\n<</silently>><<if $sunday>><<display "Sunday">><<else>><<nobr>>\n<<if visited() eq 1>>\n The <<callout inferno>> burns, and you burn with it. Today is a good day in hell.\n<<else>>\n <<set $line = $loopLines.randomWOR()>>\n <<print $line>>\n<</if>><</nobr>>\n\nWhere will you make your rounds today?\n\n<<for $i = 1; $i lte 3; $i++>><<set $sinner = $availableSinners.randomWOR()>>\n<<link $sinner>>\n\n<</for>><</if>>
<<set $his = $maleNames.randomWOR(), $her = $femaleNames.randomWOR(), $adulterers = $his + ' and ' + $her>>Their names are <<print $adulterers>>. Their mutual <<sin lust>> is the spark, and it is fanned by months and months of office politics. She gives him raises, and he gives her expensive gifts.\n\n<<kindling "Finally, [[his aggression is the kindling.|Adultery]]" Adultery uppercase>>
<<kindled "His aggression is what finally sets them ablaze.">>They fuck, hard and painful, through the cold winter months, and they manage to hide it, for a time. But <<print $his>>'s wife eventually hires a private investigator, and the fallout touches a dozen or so people, fanning the flames of resentment and distrust within two families for many, many years.\n\n[[You collect some brilliantly angry licks of flame, from the adulterers themselves|Loop]]
<<set $economist = $femaleNames.randomWOR()>><<print $economist>>, is her name. An economic prodigy from a young age, she's been working at the problem for her whole life, an amazing feat of focus for a mortal. And her hardwon solution might even work, might even actually function as a system and set of incentives that makes the world better in this one way, at least.\n\nHer <<sin pride>> is the spark, and <<kindling "it [[leads straight to the kindling.|Practice]]" Practice>>
<<print $economist>> tries to implement her plan, publicly, grandiosely, and without testing. And so it fails, hard and fast and just as publicly, and she falls into resentment, into a cold, biting anger, and blames those who could not execute her perfect plan.\n\nShe tries again, ten years later, and, of course, fails again, as no one takes her seriously anymore, and she never corrected the practical problems anyway.\n\n[[You collect from her a white-hot core, that will never go out|Loop]]
<<set $president = $femaleNames.randomWOR()>>President <<print $president>> seems to actually believe the promises she's been making, is fresh enough and naïve enough to think she can actually keep them.\n\nBut, of course, mortal governance is filled with every possible reason to not. And so she gives up, or appears to give up, this <<sin sloth>> of hers the spark.\n\n<<kindling "[[The kindling is the trust, that an entire generation had.|Apathy]]" Apathy uppercase>>
<<kindled "The trust, that an entire generation had for her, is what starts the flames.">>Apathy makes for very long-burning fires. Political engagement takes a nosedive, allowing the existing governance to entrench itself deeper. This is a deliciously vicious circle, over the generations, and you collect [[many, many smoldering, dull, red-hearth coals.|Loop]]
<<set $bulimic = $femaleNames.randomWOR()>>Her name is <<print $bulimic>>, but no one calls her that. At school, they call her fat, and ugly, and gross, and at home, she is never called. She buries herself in her own world, and her world is now wholly made from television.\n\nShe covets the bodies and minds and lives she sees, her <<sin envy>> the spark, here. <<kindling "It is kindled by the mortal world being [[all too happy to convince her that she's worthless|Bulimia]]." Bulimia uppercase>>
<<kindled "The world is all too happy to burn her up, to convince her in every way that she's worthless.">><<print $bulimic>> takes to vomiting up her food, and bleaching her skin, and hating every one who is prettier and everyone who is uglier than her. She never gets the intervention she needs, and she grows up into a single mother, pressing these values onto her daughter.\n\nYou collect [[the most incredible, sunflower-like fire, from her skin|Loop]]
<<set $capitalist = $maleNames.randomWOR()>>His name is <<print $capitalist>>.\n\nHe built a cotton factory, in this town, a long time ago, and hired most of the population to work there. And though he managed to inject money into its economy and develop the population, he also managed to pollute the town's water supply and impose unacceptable working conditions.\n\nThen, <<sin greed>> sparked when a local competitor came about, who made cheaper cotton by treating his workers worse.\n\n<<kindling "[[The kindling flares up quickly.|Capitalism]]" Capitalism uppercase>>
Today, years later, the factory has been renovated to be mostly automated, at significant cost. <<print $capitalist>> will tell you that he is content, but he is making a tenth of the profit with ten times the investment as he was, and he knows it.\n\nAnd the effects on the community are incredible. The layoffs alone cause rioting and violence, and he has to watch his decisions take root in the town around him. He causes, over decades, so much disease, and pollution, and poverty.\n\nYou collect, from <<print $capitalist>>, [[some fluid, slurry-like lava|Loop]]
<<set $neet = $maleNames.randomWOR()>>His name is <<print $neet>>, though he barely remembers it anymore. Growing up, he found himself lacking in understanding, at home or at school. So, when he discovered he could speak solely to those like him, over vast distances, from the comfort of his own home, he did not hesitate to drink, and deeply.\n\nThis <<sin gluttony>> of his is the spark, and <<kindling "it is kindled slowly but surely, by [[the everpresent dichotomy, between those he loves and those he hates, between his room and the world outside it.|NEET]]" NEET>>
<<kindled "The flickers here are nursed by the everpresent dichotomy, between those he loves and those he hates, between his room and the world outside it.">>The flames from this one are quiet, and slow, though you welcome any and all, of course. They more exist in potential, in opportunity, in [[the absence of cold, rather than in any true flame|Loop]]
<<set $activist = $femaleNames.randomWOR()>><<print $activist>>, is her name. She thinks of herself as an activist, one who fights and destroys for the sake of revolution. In truth, she merely detests the world, and would love to tear it down, inch by inch by painstaking inch.\n\nYou could look to her past, to see why she is this way. But you choose not to. It ruins the beauty, somewhat, to not see these people on their own terms. These are perfect people, sparked by <<sin wrath>>, and <<kindling "kindled by [[their anger feeding itself, over and over and over again.|Revolution]]" Revolution>>
<<kindled "She is fire itself, anger feeding itself, over and over and over again.">>Eventually, she destroys herself, of course. But that is not the point, and it is never the point, with the wrathful. Those she has hurt, those she has injured, those she has driven to ruin and calamity, //those// are the true effects of her sin. Mortals who make carnage their goal are very good at it.\n\nYou collect, from her life, [[a flame that will burn the hottest and shortest of anything in hell|Loop]]
You look over hell so rarely, for it mostly runs itself these days. The mortal descriptions are mostly accurate: red stone, an inhospitable landscape, and fire, the fire of hell everywhere. The inferno is the dominant feature, thousands of feet of flames flaring through the center of hell, with demons of all kinds scattering around it. All are welcome to live and work in the depths of hell, from the bullshaped, to the horned, to the radiant, to the ethereal, and the only job is to seek the flames of sin from the world above.\n\nYou do not know where the mortals got the idea that they would come here when they died. [[You merely collect that which they so freely give.|Loop]]
And thus, your week draws to a close. It is your custom to find yourself drawn to the inferno, on Sundays, that vast, grand, pulsating engine that drives the devil and demons alike.\n\nNot many choose to come this close, to feel it burning away at them, their skin scorching at sheer proximity. The hellfire flares, and rages, dancing away in a giant shadow-play, while the business of hell carries forth about it.\n\nInside it, you can see all that keeps hell alive. You can see the sins of the world, every thing they do that they would not, regret and sorrow and pain, tears and lost lives and people, so many people, turned to hate. The inferno consumes it all, and reaches out for more.\n\nSometimes, you wonder why the mortals provide such plentiful sins. The inferno is not theirs, after all.\n\nIn any case. You hold aloft the flame you have gathered this week. The beautiful, burning gifts the world above provides you with.\n\nAnd [[you|Throwing]]\n\n<<run\n $people = [];\n function push(messagebef, them, messageaf) {\n $people.push({\n name: them,\n message: '(' + messagebef + them + messageaf + ')'\n });\n }\n\n if ($adulterers) { push('', $adulterers, ', locked in their destructive embrace'); }\n if ($economist) { push('Young ', $economist, ', hungry to solve hunger'); }\n if ($capitalist) { push('Manager ', $capitalist, ', puppet of money and business'); }\n if ($neet) { push('Terrified ', $neet, ', seeking a connection he will never find'); }\n if ($activist) { push('Fierce ', $activist, ', hiding behind her anger'); }\n if ($bulimic) { push('Little ', $bulimic, ', used to sell beauty'); }\n if ($president) { push('Eager ', $president, ', spent to buy votes'); }\n\n $arr = $people.length === 5 ? [ 'throw', 'them', 'into', 'the', 'inferno' ] : [ 'throw', 'them', 'in', 'to', 'the', 'inferno' ];\n>>
<<set $word = $arr[visited()-1],\n $loc = $word === 'inferno' ? 'The End' : 'Throwing'\n>><<link $word $loc>>\n\n<div class="throwing"><<print $people.randomWOR().message>></div>
And they burn, and they burn, and you lose sight of them, consumed by the inferno.\n\n\n<<timedinsert 3s>>You sit there for a long, long time.<<endtimedinsert>>\n\n\n\n\n\n<<timedinsert 9s>>Until the time comes to <a id="startagain" class="link-internal">start again.</a><<run\n $('#startagain').click(state.restart.bind(state));\n>><<endtimedinsert>>