
Dear Stranger,
Much of human existence is spent in isolation, locked away inside our heads and so,
I suppose we all crave connection.
In spite of myself I reach out to you.
I sit here in a haze.
An odious fog permeates my mind, cutting through my attention span and rendering
me useless.
The harder I try, the more I lose my sense of who I am.
It's as if my identity's an orbit that I've strayed far away from,
and that really hurts.
I fume.
A vile incessant choler rages inside me and I don't know why.
Smouldering beneath that cold charcoal black like an inert lump of cinder: need only stoke me and I'll spit
and glow a violent blush.
Where is my tranquility?
Why am I not peace?
The bile broils beneath my sentiment and I'll cough it up at any second.
My voice sounds weak, lacking in authority.
Unsure of where they're heading,
my words are sucked into
the void.
The intimacy dilemma.
I need it.
I crave it.
But I'm terrified to feel it.
I'll tear myself in half deliberating this.
Two torn halves of me
craving and refusing you.
You want to come in?
Oh no, sorry I don't need you,
but also please hold me.
Know me and give me purpose.
But also bye.
I just tidied up my mind,
I can't have you bouncing on my heart and messing up my tidy me.
My tidy lonely me.
But also...
Do it.
Come in. Fuck it.
Mess me up and ruin everything, I don't care.
Suppressed inside this darkness is a spark that burns so dangerously bright that it will scar us both,
forever.
And we will love it.
Until we're sorry.
I don't play in halves.
So actually...
maybe let's just leave it there.
Better safe than sorry.
You do you and I'll do me.
Separately.
Lonely.
You ______ Me
      ^
 2m distance
You can be broken.
I will hold back your hair and say:
"It's ok.
At least you get to be sick in your new pyjamas."
There's that pressure, you know
To Carpe that fucking Diem.
I know.
I know.
Sometimes I so painfully, suffocatingly know,
that I forget to pay attention to what is actually happening.
That nagging itch scratching at the inside of my skull.
Live in the moment.
Experience this.
Experience this.
I'm fucking trying.
Sometimes the scratching of that voice screaming streams of suffocation
is so damn distracting
that I miss it.
The experience has happened.
I forgot to pay attention.
var data = "This is Poko";
var data2 = "Poko is terribly depressed today";
function setup() {
createCanvas(900, 500);
textSize(35);
noLoop();
noStroke();
textAlign(CENTER);
fill(56, 76, 76, 150);
}
function draw() {
background('#d2c8d5');
// poko is represented as a simple circle for now
ellipse(width / 2, height * 0.45, 70);
/* at the moment the two sentences are printed with delay in between
and then the screen redraws */
typeWriter(data, 0, width / 2 - (data.length * 10), height * 0.7, 70, 300);
typeWriter(data2, 0, width / 2 - (data2.length * 10), height * 0.8, 50, 2800);
setTimeout(redraw, 7000);
}
/* the typeWriter function draws each letter equally spaced,
not taking into account the widths of each letter.
This was unintentional to get the typing effect to work correctly, but the
erratic spacing does add to the disjointed feeling.
*/
function typeWriter(sentence, n, x, y, speed, delay) {
setTimeout(function () {
if (n < (sentence.length)) {
text(sentence.substring(n, n + 1), x + n * 20, y);
n++;
setTimeout(function () {
typeWriter(sentence, n, x, y, speed, 0)
}, speed);
}
}, delay);
}
let started = false;
let narrative = {};
let currentScreen;
// I have tried to consolidate the narrative in a json file
function preload() {
narrative = loadJSON('narrative.json');
}
function setup() {
createCanvas(900, 500);
textSize(22);
noLoop();
noStroke();
textAlign(CENTER);
fill(56, 76, 76, 150);
currentScreen = 0;
background('#d2c8d5');
text('c l i c k', width / 2, height / 2);
}
function draw() {
if (started) {
noLoop();
background('#d2c8d5');
ellipse(width / 2, height * 0.45, 70);
/* So far I can run the typewriter function for each line on each screen,
then redraw the screen and run the next set of sentences */
for (let i = 0; i < narrative.screens[currentScreen].sentences.length; i++) {
let line = narrative.screens[currentScreen].sentences[i].content;
let lineID = narrative.screens[currentScreen].sentences[i].id;
let speed = narrative.screens[currentScreen].sentences[i].speed;
let delay = narrative.screens[currentScreen].sentences[i].delay;
typeWriter(line, 0, width / 2 - (line.length * 8),
height * (0.7 + lineID / 10), speed, delay);
};
currentScreen++;
let refreshDelay = narrative.screens[currentScreen].refresh;
setTimeout(redraw, refreshDelay);
}
// Typewriter function
function typeWriter(sentence, n, x, y, speed, delay) {
setTimeout(function () {
if (n < (sentence.length)) {
text(sentence.substring(n, n + 1), x + n * 16, y);
n++;
setTimeout(function () {
typeWriter(sentence, n, x, y, speed, 0)
}, speed);
}
}, delay);
}
}
function mouseClicked() {
if (!started) {
started = true;
loop();
}
}
{
"screens": [
{
"sentences": [
{
"id": 0,
"content": "this is poko",
"speed": 70,
"delay": 300
},
{
"id": 1,
"content": "poko is terribly depressed today",
"speed": 50,
"delay": 2800
}
]
},
{
"sentences": [
{
"id": 0,
"content": "poko is a little boy",
"speed": 60,
"delay": 600
},
{
"id": 1,
"content": "(maybe)",
"speed": 70,
"delay": 3800
}
],
"refresh": 7000
},
{
"sentences": [
{
"id": 0,
"content": "a serious little boy",
"speed": 60,
"delay": 700
},
{
"id": 1,
"content": "a sensitive little boy",
"speed": 50,
"delay": 3800
}
],
"refresh": 6000
},
{
"sentences": [
{
"id": 0,
"content": "little poko is a sensitive little",
"speed": 60,
"delay": 400
},
{
"id": 1,
"content": " silly little boy",
"speed": 50,
"delay": 2600
}
],
"refresh": 7000
}
]
}