Welcome to the MedPet prototype demo!
By: Vardaan Shah
Thanks for trying out this prototype of MedPet. Please read this short introduction before clicking the "Demo" button. First off, make sure you're on a laptop or desktop--although there shouldn't be any issues, this demo is not meant to run on mobile. The demo covers the website's UI once it loads, so I reccomend opening it in a new tab and keeping this page open to reference.
Using the Demo
The controls are split into the right and left panels. The right panel has the controls for the representation of the virtual pet device, and the left panel has ways to interact with the "real world" to see how the system will react.
Right Panel
The right panel has six buttons--four directional buttons, an "A" button, and a "B" button.
The directional buttons move a cursor around the top-right viewport. After the first time you move the cursor, the virtual pet is always looking in the cursor's direction.
Pressing the "A" button results in the virtual pet sliding to the cursor position.
A lower score results in the virtual pet moving slower to reach your mouse. It also results in the pet looking virtually jaundiced.
Currently, the "B" button has no function.
There are also keyboard equivalents to the controls on the right panel: The "w" key is up, the "s" key is down, the "a" key is left, and the "d" key is right. The period key is "A," and if you're interested in doing literally nothing, I think the comma is mapped to "B."
Please do not use the arrow keys. I have not configured them correctly so they are always controlling both panels at the same time and cause problems.
Left Panel
The uppermost set of boxes on the left panel are a display of the currently elapsed in-game time. The "advance time pls" button was honestly more useful in testing, but if you would like, it advances time 7 minutes into the future.
The next set of very similar-looking boxes down is an instant time jump. Type in how far into the future you would like to advance, and click "advance this much time," and, as the name suggests, the in-game clock will advance that much time.
The input boxes for the instant time jump act strangely. After you type a character, the cursor will jump back the beginning of the textbox. Make sure you have typed what you thought you typed.
The next boxes down are a "consume:" button and a drop-down indicating which medication you are to consume. "meds 2" and "meds 3" currently have no purpose, and might cause problems with calculating the score. The demo should start with "meds 1" selected in the drop-down. Please keep it like that.
The observant reader may note that the drop-down menu is, thus, useless at this time.
The green rectangle at the top of the virtual pet's habitat will notify you to take a medication every 24 in-game hours. In order to take the medication, click on the "consume" button. Play around with what happens when you take the medication on time versus what happens when you take it late or early, versus what happens when you skip a dose.
The next set of boxes are just a readout of what the current score is.
The bottom-most button on the left panel is the pause/unpause button. The demo starts with the in-game clock paused. To start the clock, click the button. To pause the clock again, click the button again.
Background
MedPet is a virtual pet (tamagotchi) that is intended to help ADHD patients who are struggling to to take their meds consistently. The idea is that seeing a virtual pet be happier/doing better immediately after taking medication would help associate the act of taking medication with positive feelings and an immediate reward.
This virtual prototype is intended to be representative in some way of an actual physical device that would have buttons and run with the actual time, rather than the comically sped up in-game time here. All the controls on the left side of the screen are representative of real-world actions, rather than controls of the game itself. Think of this demo as an emulator--the viewport in the top right is what the screen on the actual device is intended to look like. The intention is to have the same 6 buttons on the device as you see in the bottom right of the screen.
Missing Features
As this is a prototype, there are several features that I intend to add over time that I was not able to succesfully include in this round. I think these features provide some context for the features that are present, so I'll list out some of the important ones.
- The virtual pet should have a few mini-games that one can play with it. Right now you can just get it to follow your clicks, which is cute, but a few proper games would likely help promote the warm and fuzzy feelings.
- The virtual pet device will likely include an integrated medication holder that can detect when it is opened. When it is opened, the user will be asked to confirm if they took the medication.
- The virtual pet should be able to be named and potentially renamed, and that name should be used in the interaction between the user and the pet.
There are also some features, such as support for different/multiple medications at once, support for starting new medications or ending old ones, refill reminders, etc. that are important for the usability of the product but not as directly tied to the viability of the core premise.
Demo Goal
I have published this demo in its unfinished state largely to collect feedback on some particular design questions.
In order to better understand the questions I ask, allow me to explain the virtual pet theory of change.
The efficacy of this potential product relies on three connected premises, that
- a virtual pet that primarily reacts to the consistency with which it's "owner" takes medication is capable of engendering a positive and lasting emotional connection directed towards it from a substantial portion of patients with ADHD who struggle with taking their medication consistently, and that
- a positive connection with the virtual pet will, by proxy, increase a patients emotional investment in adhering to their medication regimen, and that
- their pet-induced emotional investment will result in better adherence to the regimen.
Design Questions
One of the major design tasks of this product is to design the scoring function for calculating how "well" the pet is doing. Currently, it is calibrated to be taking in about a week's worth of data about how on-time and consistent the patient was in taking their medications.
Q1: Should the scoring function consider recent success in schedule adherence more than past success?
I.e. if you miss a day after being consistent for a while, how jaundiced should the pet look? If you take a day after missing repeatedly, how much should the pet perk up?
Q2: Should the scoring function disproportionately reward breaking a streak of forgotten days? Should it disproportionately punish breaking a streak of succesful days?
I have many knobs and levers to play with in designing this scoring function. Although I will try my best to design a function that is suitable for many people, it is possible and perhaps likely that different people will have different wants and needs out of their scoring function.
Q3: Should the scoring function be adjustable--for example, should it have a "temperamental" control that either amplifies or diminishes the impact an outlier event will have on the score?
Q4: In the case that the scoring function is adjustable, who should be able to adjust it? The patient, their medical provider, the manufacturer, or all of the above?
The scoring function makes up a significant chunk of how the virtual pet "feels" to interact with. If the scoring function changes, it could be that the pet would be a different pet altogether.
Q5: Would it be better, if the scoring function can be adjusted, that we release several distinct individual pets rather than allowing tweaking a single base pet's functionality?
Regarding the connection that a patient will feel with the pet, I am struggling to reconcile two somewhat contradictory thoughts I have. The Ikea effect and experience inform us that when people have a hand in creating something, they often feel more and better about that thing. At the same time, I think that the illusion that the pet is an individual and that the lethargy it exhibits when the patient does not adhere to the regimen is contingent on the patient not being able to change it's fundamental characteristics over time.
Q6: The virtual pet will be named by the patient, and maybe the patient will be able to decide other characteristics about it as well. How easy or difficult should it be to change these characteristics? Would the ability to always change the name, color, or personality of the virtual pet without problem impact your ability to suspend the fact that the virtual pet is not a real entity?
Alright, thanks for getting through those. These ones below are a little more fun.
Q7: One of the features I am on the fence about is a medication alarm, and exactly how loud/annoying it should be. Would you find a medication alarm useful, annoying, or both? If the alarm function was narratively integrated into the virtual pet, (e.g the pet is yelling at you) would you find it corny or would you find it cute?
I will be adding more ways to interact with your virtual pet at some point. Some of my ideas are a feeding/petting system, a dialogue system, and a trick system. I have some questions about those.
Q8: Would it be distracting, annoying, engaging, or some combination of those if the auxillary mechanisms impacted the pet's overall well-being score?
My current plan on communicating the pet's well-being score is to have it reflected in the pet's behavior in some ways, and then to have a health bar that gives a more quantitative way to see the score.
Q9: What do you think is (are) a good way(s) to display the score? Would having it displayed as a straight up number be anxiety-inducing or helpful? Would having it exclusively as a progress bar be annoying?
Q10: Finally, do you have any other thoughts about the demo I haven't covered? Does this project remind you of anything? Have you seen something like this in the past?
Conclusion
Thank you so much for reading this introduction and manual, and for trying out MedPet. I appreciate any thoughts you have, and especially any thoughts you'd like to share with me.
Finally, I have spent a lot of time with this green blob in the past few days. I would like to name it, but am unsure what to name it. I am open to suggestions.