Fiction and Prose

Interactive Fiction

Reading and Doing

Game Director Story

A deeply honest look at the game industry, inspired by true stories of pain and catharsis. Check out the demo here.


Ink Fiction

Prism - Human infrastructure in the city of wonders. Top ten at IFcomp 2022.


Exercises

Stuck in an Elevator - An exercise in voice-matching and tight dialogue on a five-page limit.

Quest Setup - A short example establishing an objective and texture for a small location in an open-world game.

Bark Sheet - Sample barks for three characters in an original urban fantasy tactics game.


Twine Stories

Closeness (5 min)- a prototype for a 2017 grant application deemed “highly recommended for funding” by the expert panel. A project about human connection, contrasting the role of vulnerability in personal relationships and in frontline social work.

The Last Free Folk (2018, 15 min)- A post-apocalyptic exploration of severe intrusive thoughts. Five vastly different people live on a rusting mobile command vehicle, running from an invisible, inevitable threat. How do we internalize violence to understand it? How do we escape it?

Until the Walls Come Down (2019, 10min)- Four misfits are trapped at the end of the universe, each with their own burdens to unpack before it’s all over. How do you find meaning in mortality?


Jam Games


Transmission Lost - A rhythm game from the 2018 Global Game Jam that describes the experience of two long-lost acquaintances (perhaps once lovers) reconnecting on an unstable line. Full text available below.


//RECONNECT//

#417ca5: Can you hear me? (!4)

 

#ffb93f: I’m here. (!4)

 

#417ca5: It’s been a long time. (!4)

 

#ffb93f: Why now? (!4)

 

#417ca5: I guess I missed you. (!4)

 

#ffb93f: There are a lot of things we didn’t resolve. (!6)

 

 

//FAULT//

 

#417ca5: Do you think it’s my fault? (!4)

 

#ffb93f: No. We share that. (!4)

 

#417ca5: You’ve changed. (!4)

 

#ffb93f: I had to. (!4)

 

#417ca5: Me too, I guess. (!4)

 

#ffb93f: All this time. (!8)

 

#ffb93f: To say… what? (!4)

 

#417ca5: That I missed you. (!6)

 

#ffb93f: I guess that’s enough. (!6)

 

//TIMING//

#417ca5: There’s, uh. There’s been a lot of signals coming in. (!4)

 

#ffb93f: You’ve been watching them. (!4)

 

#417ca5: Listening. It’s… (!4)

 

#417ca5: It’s everyone. (!4)

 

#417ca5: They’re speaking all at once. (!4)

 

#ffb93f: You wanted to share them with me? (!4)

 

#417ca5: Of course I did. (!4)

 

#417ca5: You were always…(!4)

 

#ffb93f: I know. (!4)

 

#ffb93f: How did we-? (!4)

 

#417ca5: Shh. Just listen. (!4)

 

 

//DRIFTING INTO EVERYTHING//

 

#ffb93f You get lost in it. (!4)

 

#ffb93f: You feel the pulse. (!4)

It resonates through you.  (!4)

 

#ffb93f: Tiny vibrations in the strings, (!4)

the speakers, (!4)

and the cells of your body. (!4)

 

#ffb93f: This loose collection of particles. (!4)

 

#ffb93f: It is you, and it is limited. (!4)

 

#ffb93f: But the universe is not. (!4)

 

#ffb93f: And you’re connected to it. (!4)

 

#ffb93f: You are expanding along with it. (!4)

 

#ffb93f: Particles drifting farther apart. (!4)

 

#ffb93f: Drifting into everything. (!6)

 

 

//CACOPHONY//

#417ca5: No. It’s too much.  (!4)

 

#417ca5: There’s too much happening all at once. (!6)

 

#417ca5: I can feel it all. (!8)

 

#417ca5: The entire world. (!4)

 

#417ca5: Can you hear them? (!4)

 

#417ca5: They’re all out there. (!4)

 

#417ca5: They have their own lives, their own problems.  (!8)

 

#417ca5: It’s DEAFENING. (!6)

 

#417ca5: How do you sort through it all? (!6)

 

#417ca5: Which signals are worth your attention? (!6)

 

#417ca5: If they all are… (!4)

 

#417ca5: Is that the same as its opposite? (!4)

 

 

//DEMANDING//

 

#ffb93f: You’re stronger than this. (!4)

 

#417ca5: You don’t know that. (!4)

 

#ffb93f: You’ve helped me through worse. (!4)

 

#ffb93f: What changed? (!4)

 

#417ca5: The world changed. (!4)

 

#417ca5: It didn’t used to be so... (!4)

 

#ffb93f: … Much. (!4)

 

#417ca5: It’s too much. (!4)

 

#ffb93f: Maybe in order to do right… (!4)

 

#ffb93f: Maybe it IS infinitely demanding. (!4)

 

#417ca5: Maybe you can only measure your life in the things you’re not doing. (!8)

 

#ffb93f: That includes the people you’re not hurting. (!6)

 

#417ca5: And the people you are? (!4)

 

#ffb93f: You do what you can to balance the scales. (!6)

 

#417ca5: Anything you can. (!4)

 

#ffb93f: And maybe a little more. (!4)

 

 

//SenseMem//

 

#417ca5: I never forgot that time, when we went to see your – (!4)

 

#ffb93f: I did. (!4)

 

#417ca5: You didn’t forget. You chose. (!4)

 

#ffb93f: I guess I chose to forget. (!4)

 

#ffb93f: Thanks for reminding me. (!4)

 

#417ca5: Do you mean that? (!4)

 

#ffb93f: I earnestly do. (!4)

 

#ffb93f: As much as I chose to forget… (!4)

 

#417ca5: Even hard memories mean something. (!5)

 

#417ca5: They’re a part of you.

 

#417ca5: You’re a part of me. (!4)

 

#ffb93f: Is that why you sent me this? Because I’m a commodity? (!8)

 

#417ca5: You know that’s not what I mean. But you ARE valuable. (!8)

 

#ffb93f: Smooth-talker. (!4)

 

#ffb93f: Now I remember how I got sucked in. (!4)

 

#417ca5: Enough to see me again? (!4)

 

//LOCATOR//

 

#ffb93f: I don’t think I can see you again. (!4)

 

#417ca5: I respect that. (!4)

 

#ffb93f: God, you HAVE changed. (!4)

 

#417ca5: I learned a lot. I guess that’s why… (!4)

 

#ffb93f: That’s why you chose to send this. This message. (!6)

 

#417ca5: Do you know where I am? (!4)

 

#ffb93f: … Yes. (!4)

 

#417ca5: So you know what I’m doing. (!4)

 

#ffb93f: I’m worried about you. (!4)

 

#417ca5: It’s easy to worry. (!4)

 

#417ca5: Let it go, Iris. (!4)

 

#417ca5: I’ll be fine. (!4)

 

#ffb93f: Here I thought I was so good at letting go. (!4)

 

#ffb93f: Maybe I was just fooling myself. (!4)

 

#417ca5: Maybe. (!4)

 

#417ca5: The important thing is you can admit it. (!4)

 

#ffb93f: Maybe I can see you. (!4)

 

#ffb93f: I know where to go. (!4)

 

 

//SLOPE//

 

#ffb93f: Jamie? (!4)

 

#417ca5: Iris. (!4)

 

#ffb93f: Can you hear me? (!4)

 

#417ca5: I’m here. (!4)

 

#417ca5: Was it worth the trip? (!4)

 

#ffb93f: It wasn’t easy to get here. (!4)

 

#417ca5: For either of us. (!4)

 

#417ca5: I’m glad you came. (!4)

 

#417ca5: I have something to show you. (!4)

 

#ffb93f: What is it? (!4)

 

#417ca5: The signal. (!4)

 

#417ca5: Mine, to you, to everybody. (!4)

 

#ffb93f: You’re going to feed it back into itself. (!4)

 

#417ca5: Everyone should hear what we’ve heard. (!4)

 

#ffb93f: They’ll hear each other. They’ll hear everything. (!8)

 

#ffb93f: How do you think they’ll react? (!4)

 

#417ca5: How they have to. Will you help me? (!6)

 

(!8)

 

#ffb93f: Yes.