Concept:
Boredom is a state of mind that craves some type of change. I ask myself sometimes when was the last time I have gotten bored. My answer would be is that I do not remember. While discussing other’s people state or level of boredom, I can see a glimpse of the different life each one of us has. As well as the pace humans like to take for themselves.
In my game I’m Not/Too Bored I wanted to create a dialogue between characters that experince different life pace than others. Each holds a unique lifestyle that changes how they decide to go on with their way of living. While engaging in a conversation with three people, I want to gain data, that shouldn’t be too seriously taken, to showcase the level of boredom the player might experince in life. I could also add a little input that could help them as I myself never get bored.
Process:
I started with the type of questions I wanted to ask, but I also didn’t want to make them way too deep; mostly because the results are not serious.
I started by coming up with NPC designs both in a small miniture version and the speaking version.
Drawing the background was fun as it was the first time drawing in pixels.
Code:
Coding could be said as the most diffecult and least enjoyable part. However I did manege to add my images, sound, and font to my likings.
In the code below is how I made my characters clickable so they could answer the questions.
// Check if a character is clicked and handle interactions
if (
mouseX > 50 &&
mouseX < 50 + hugo.width &&
mouseY > 135 &&
mouseY < 135 + hugo.height
) {
// Handle interactions for Hugo character
// Display questions for Hugo and handle answers
} else if (
mouseX > 280 &&
mouseX < 280 + rene.width &&
mouseY > 162 &&
mouseY < 162 + rene.height
) {
// Handle interactions for Rene character
// Display questions for Rene and handle answers
} else if (
mouseX > 0 &&
mouseX < fuLi.width &&
mouseY > 0 &&
mouseY < fuLi.height
) {
// Handle interactions for Fuli character
// Display questions for Fuli and handle answers
}
}
}
This is the class where the questions were saved:
class Questions {
constructor() {
this.characterQuestions = {
hugo: [
{ question: "Is it easy for you to concentrate on your activities?", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "Frequently when you're working do you find yourself worrying about other things?", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "Does time always seem to be passing slowly?", options: ["Yes", "No", "Maybe/Sometimes"] },
],
rene: [
{ question: "Do you often find yourself at 'loose ends,' not knowing what to do?", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "Do you often get trapped in situations where you find yourself doing meaningless things?", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "Does having to look at someone's home movies or travel pics bore you tremendously?", options: ["Yes", "No", "Maybe/Sometimes"] },
],
fuli: [
{ question: "Do you find it easy to entertain yourself?", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "In any situation, you can usually find something to do or see to keep yourself interested.", options: ["Yes", "No", "Maybe/Sometimes"] },
{ question: "Much of the time you just sit around doing nothing, and you are very good at being patient.", options: ["Yes", "No", "Maybe/Sometimes"] },
],
};
}
getQuestion(character, questionIndex) {
return this.characterQuestions[character][questionIndex];
}
calculateResults(answers) {
const counts = { Yes: 0, No: 0, 'Maybe/Sometimes': 0 };
answers.forEach(answer => {
counts[answer]++;
});
const maxCount = Math.max(...Object.values(counts));
const majorityAnswer = Object.keys(counts).find(key => counts[key] === maxCount);
return majorityAnswer;
}
}
// Export the Questions class for use in sketch.js
module.exports = Questions;
Possible Improvement:
I wish I could go around the local server issues when it comes to displaying my images.
I want only for certain keys to play the sound not all of them.
I wanted to showcase the results in a different way.
Edit: https://editor.p5js.org/mariamalkhoori/sketches/L-i2O01PV