narrative designer, goofball


ianmichael
@ianmichael

avid / die-hard / obsessive followers of this bot may have noticed that there have been three posts lately from a character named Mawn. with over 9100 lines total in Anachronox to pick from, this might seem like an extreme statistical outlier, but Mawn has more than the average pool of lines — you can torture this poor NPC by talking to him over and over and over and over.

like other JRPGs it's styled after, anachronox features a narrative system where the final line of any NPC dialogue will repeat at the end of their dialogue cycle, usually after three or four lines. when you first speak to Mawn in Votowne, you're led to believe this will be the case right away:

#window 63:4202
title "Mawn"
body "These ballot initiatives are quite challenging. I can't decide how to vote today."
cam left restore zip
talk npc gest_h stay
style "style_demo"
font "_anox10"
background color1=440044d0 color2=220022d0 color3=080008d0 color4=220022d0
xpos 30.0
ypos 30.0
width 580.0
image "graphics/underline_demo.pcx" 16.0,31.0, 548.0,32.0

#window 63:4203
title "Mawn"
body "Well, have a nice day. Happy voting, as they say."
cam left restore zip
talk npc gest_h stay
style "style_demo"
font "_anox10"
background color1=440044d0 color2=220022d0 color3=080008d0 color4=220022d0
xpos 30.0
ypos 30.0
width 580.0
image "graphics/underline_demo.pcx" 16.0,31.0, 548.0,32.0

but you can keep going with it:

#window 63:4205
title "Mawn"
body "Well, well well. Look at that time. I've got to be going soon. Good-bye!"
cam left restore zip
talk npc gest_j stay
style "style_demo"
font "_anox10"
background color1=440044d0 color2=220022d0 color3=080008d0 color4=220022d0
xpos 30.0
ypos 30.0
width 580.0
image "graphics/underline_demo.pcx" 16.0,31.0, 548.0,32.0

#window 63:4206
title "Mawn"
body "Yes, well, I suppose I should be going."
cam left restore zip
talk npc gest_h stay
style "style_demo"
font "_anox10"
background color1=440044d0 color2=220022d0 color3=080008d0 color4=220022d0
xpos 30.0
ypos 30.0
width 580.0
image "graphics/underline_demo.pcx" 16.0,31.0, 548.0,32.0

#window 63:4207
title "Mawn"
body "Oh, yes. You again. Is there something you want to communicate. A word perhaps? A sound?"
cam left restore zip
talk npc gest_h stay
style "style_demo"
font "_anox10"
background color1=440044d0 color2=220022d0 color3=080008d0 color4=220022d0
xpos 30.0
ypos 30.0
width 580.0
image "graphics/underline_demo.pcx" 16.0,31.0, 548.0,32.0

and, of course, the more you talk to him, the more unhinged the interaction gets. each of these lines will fire after anywhere from three to seven rounds of "I'm just going to keep saying the same thing." which means it could take up to 100 clicks to get through this part.

#window 63:4235
title "Mawn"
if ((@message == 1.0) && (@count == 0.0))
   body "Very persistent. Good for you."
if ((@message == 2.0) && (@count == 0.0))
   body "You really are going to take this all the way, aren't you?"
if ((@message == 3.0) && (@count == 0.0))
   body "What do you think this is going to prove?"
if ((@message == 4.0) && (@count == 0.0))
   body "What if I tell you you're not going to get an item or any information out of me?"
if ((@message == 5.0) && (@count == 0.0))
   body "You're just doing this to see what happens, aren't you?"
if ((@message == 6.0) && (@count == 0.0))
   body "Do you really have this much spare time?"
if ((@message == 7.0) && (@count == 0.0))
   body "Okay, I think we've taken this as far as it will go."
if ((@message == 8.0) && (@count == 0.0))
   body "Doesn't your finger hurt?"
if ((@message == 9.0) && (@count == 0.0))
   body "Doesn't your finger hurt?"
if ((@message == 10.0) && (@count == 0.0))
   body "Doesn't your finger hurt?"
if ((@message == 11.0) && (@count == 0.0))
   body "Wow, I couldn't fake you out."
if ((@message == 12.0) && (@count == 0.0))
   body "This is madness. You really must get a life."
if ((@message == 13.0) && (@count == 0.0))
   body "We could do this all night. Seriously."
if ((@message == 14.0) && (@count == 0.0))
   body "You will never know if three hundred clicks later I will say something new."
if (@count != 0.0)
   body "I'm just going to keep saying the same thing."
cam left restore zip
talk npc gest_h stay
startswitch {
  if (@count == -1.0)
    set @count = func_drand[3,7]
  set @count = @count - 1.0
  if (@count == 0.0)
    set @message = @message + 1.0
}

you can see at the end there that the game dares you to click on him 300 times. and if you try to do so:

#window 63:4240
title "Mawn"
if (@clicks < 300.0)
   body "That's %d.", @clicks
if (@clicks == 300.0)
   body "You sick twist. I hope you like working for a living. Goodbye."
if (@clicks > 300.0)
   body "Good heavens! STOP! Go play Votowne Lost & Found or something."
cam left restore zip
talk npc talk_a stay
startswitch {
  set @clicks = @clicks + 1.0
}

finishswitch {
  if (@clicks == 300.0)
    goto 63:4241		                   
}

once the click count reaches 300, he steals all your money and vanishes in a puff of smoke:

(the sadistic part of me wishes this was permanent. what did you think would happen after bothering this poor man over three hundred times?!) alas, you can find him around the corner from his original location, where he gives you your money back (the colorfully titled variable @poo) plus an extra $500 for your trouble:

#window 63:4245
title "Mawn"
body "Sorry that I took your money. I'm working on new short-range teleportation technology and I get agitated easily."
cam left restore zip
talk npc talk_a stay
startswitch {
  if (mawn_gave_dough == 0.0)
    set @poo = @poo + 500.0
  if (mawn_gave_dough == 0.0)
    extern add_money @poo
  set mawn_gave_dough = 1.0
}

to go back to the original line that was pulled today—"Good heavens! STOP! Go play Votowne Lost & Found or something."—I don't believe there's any way to actually see this line in the game! I think it was just added as a contingency in case the counter glitched and somehow incremented over 300 (hence the reference to a different minigame in the same level.) i thought this was neat!


You must log in to comment.