Project Idea: Autism Simulation Game
I'm not sure if this belongs in art or computers - feel free to move it if it's in the wrong place.
I've had several ideas along these lines, but this one is my favorite so far. I am an artist and I see art as a valuable tool for expression, and a way to share things that cannot be shared or understood through other methods. I've seen some great digital art that has inspired me to actually try to make this one a reality.
I want to show people what the world looks like through my eyes. I've already found some success with painting and drawing, and now I want to try a sort of digital artwork / game to simulate some of the experience and perception that autistic people have. The premise is that you (the player) have been sent to the supermarket to pick up the items on a shopping list. Normally this wouldn't be a big problem, except, disaster: they have just reorganized the entire supermarket and you have no idea where anything is located.
For an NT this wouldn't be much of a problem, but for me (and probably for many of you), it is an incredibly difficult and stressful situation that I have to face on a daily basis. A supermarket (or any other environment I'm not already familiar with) is just a barrage of colors and noise. I can stare at an unfamiliar shelf for twenty minutes and still have no idea what's on it. All I see are a billion tiny details that refuse to come together to form a whole.
The game itself will consist of still images and mouse-only controls. All of the images will be simple first-person perspectives. You start at the front door, click the right spot to go in, then click the right spot to move to each aisle - similar interface to the original Myst and other such adventure games. The twist will be the way these images are presented. I thought a long time about how to best simulate for an NT audience what the supermarket actually looks like for me. I am currently toying with 2 ideas:
1. Enormous images shrunk down to fit the window size. So much detail in such a small space that no one can possibly make out what anything is. For example, a shelf with cans of vegetables which might actually be five meters long and contain thousands of different cans, far more than one would actually see in reality, but shrunk to the size of an actual shelf. The key is that a casual glance at this image cannot possibly be clear enough to locate the item you're looking for (or even be sure it's on this particular shelf at all), not because it's blurry (in real life it most certainly is not), but because there is just too much detail to process.
2. Similar to above, but slightly less shrunk down and with a blurring filter added to make everything indistinct (simpler to do and probably with a similar effect).
For each of these, the cursor would serve as the "focus point". As it moves over the image, the selected (small) area will be magnified and made clear so that you can make out what's there. But the cursor must be moved very slowly in order to actually view each individual item. When the proper item is finally found, it can be clicked to add it to the cart and crossed off the list.
I'm planning to do it in this way partly because I think it will be effective, and partly because I'm sure I'm capable of producing these images myself (though it will take some time). My goal for this weekend is to complete one such image as a demonstration of what I'm going for so I can present it visually instead of trying to describe it like this. When it's ready, I'll add it here.
Aside from the images, there must be sounds as well. Loud sounds, of course, and all played at the same volume. Perhaps at some point in the game someone in the shop might ask you a question, but you might not hear it over the buzzing of the lights and the creaking of shopping carts and the clanking of cans and bottles and the screaming of children, etc. Also, I'd like to make it so the last part of the game is the checkout - and the display for the money is broken, so you have to listen to what the cashier tells you and try to give her the right amount of money while the people behind you are complaining about how long it's taking and several children are screaming that they want candy.
As an addition, I'd like to show how the longer you stay in this environment, the more difficult it becomes to focus on what you need to do. As time goes by, the stress level goes up, and the noises get louder, the background gets blurrier, and the magnifying glass gets smaller. If you are not able to complete the shopping trip before the stress meter hits maximum, you have a meltdown and lose the game.
So really it's not so much about playing a fun game as it is about educating others through this program about what life is really like for people like us. I blend in very well in real life, after many years of practice, but I still have meltdowns from time to time and it never really gets easier. But because I blend in so well, people generally don't believe me when I tell them how difficult it is, how just listening to people having a loud conversation can hurt my ears, why exactly I can't always hear and process what they're saying even though I'm paying attention, why I don't want to go to the shopping center with them to shop for shoes or what have you. Having something like this to show people might help them understand a bit better.
The thing I will need hep with is the programming. I have been actively trying to learn to program since I was 12 years old (I'm 27 now), starting with QBASIC. I've taken courses and read books, but I've never been able to grasp how it works and I've been met with endless frustration. I want to try to learn enough code to do this myself, and I hope it won't be too complicated, but I might need some help. The first thing is to determine what programming language I should use to do this. I'm thinking it would make a good flash game and I've heard that flash is *relatively* one of the easier systems to code in, but I'm open to advice because I'm really totally clueless about this. If someone wants to help with the programming that would be great, but I won't go so far as to ask someone to do the coding for me unless they really want to.
So. Feedback? Ideas? Suggestions? It's only a proposal at this point, but I think it's doable and worth doing.
Publish the instructions after they've been passed back and forth through Google translate a few time, so that Enties experience the confusion we feel when being given instructions that make no sense to us.
Randomly make things work the opposite of how they usually work, to give Enties an idea of how inconsistent the world seems to us.
Set up the "people" in the game to never give a direct answer to any questions the players may ask, and if the player asks the same question more than twice, have the "people" respond with hostility or derision, so that Enties learn what it's like to have to deal with people who simply don't care.
That should get you started.
_________________
Yes, I've had ideas along these lines as well, but I lack the abilities to bring them to life just now. For the purposes of this project I will focus just on the sensory input of images and sounds. In the future I'd love to make a role-playing game that simulates things like social interactions, but unless someone wants to code all that for me it's a bit out of reach at the moment.
I even thought of a game simulating conversation where you learn "rules" and "techniques" one at a time. For example, you hear someone make a "yo mama" joke and note that it makes people laugh, so you add it to your list of things to do to make people laugh. Then later you enter a conversation that works like a turn-based battle. Someone is feeling down and you want to cheer them up so you select "say something funny" from the list of options and out comes the yo-mama joke, which only makes the person angry. The goal would be to build up relationships with people, but since you acquire these conversational options so slowly, and never know if the thing you say will happen to be appropriate or not, the possibility of success is very low.
But like I said, that's far too complicated for my abilities just now. I'll stick with images and sounds for the moment, and if it's successful, I'll try more involved ideas.
Set it up so that when a player records a high score, it is instead displayed next to another randomly-selected name. This will simulate how our best efforts are often appropriated by Enties, who then take credit for our every effort.
Every time the player opens a new spawn point or achieves a goal, have the game respond with a phrase like, "You should have thought of that sooner" or "Next time, try a little harder" instead of "Congratulations!" or "That's Wonderful!" This also reflects real-life Aspie experiences.
Randomly re-arrange the map, and then give the player something to deliver in a limited amount of time to a location that he's been to before, only it won't be where the player remembers. If he fails, end the game immediately and return to the operating system without any explanation. The player will then have to start the game from the beginning. This will simulate how we're punished for our mistakes in the confusion of the real world.
More to come...
_________________
It sounds like you have a lot of ideas for other "games" and that you are really itching to vent some frustration. Right now I can't do any of this though. I'm just going to make still images which are difficult to see, have to navigate using a limited "magnifying glass" sort of cursor to find what you need, build up stress to make it more difficult the longer it takes, and just provide a peek into the way my (our) perception works and how it can make life difficult.
What I could really use is suggestions about the best way to organize the graphics and, most importantly, which coding system to use to make this. I'm currently digging through flash tutorials but they're all just for animation. How do people program flash games? Can anyone point me to a proper (highly visual if possible) tutorial that shows how to make games in flash which is really for beginners? All of the tutorials I've found regarding making flash games seem to assume that everyone who wants to use flash already knows how code works. I need to learn how code works, and I can't learn it by reading walls of text. I need something visual and I can't find it anywhere. I can't learn from blocks of text filled with bits of code that I'm already assumed to understand.
This is the wall I hit in my programming courses in high school. I got "if...then" statements without any difficulty. Makes perfect logical sense. Then they go directly to a long example of a finished program full of symbols and abbreviations and math which is completely incomprehensible. I always feel like the teachers and the books are saying "when you want to make eggs, first you put the spinach inside the nutshells, then you squish the tomatoes between your toes, then you light the incense." No matter how many times I read that, I don't see anything that has anything to do with eggs. How on earth does this make sense to people?
If any programmers take pity on me and are willing to take me under their wing and walk me through these things, I would be eternally grateful. Someone who can explain clearly what exactly the mess of symbols means, how each part works and what it does. I found one person who promised to do this for me, and then he had some sort of mental breakdown and disappeared from my life. It was quite a blow...
^ Hah hah....yeah, I know what you mean. And I am not a programmer.
Anyhow, for IT issues, I wonder if our own Wrong Planet Maths/Sci/Computer Forum might offer help with coding, etc.? Alternatively, EHow can be quite handy. Good luck, you have a great project.
_________________
The ones who say “You can’t” and “You won’t” are probably the ones scared that you will. - Unknown
Ahh... my expertise is more in hardware than graphics-intensive software.
_________________
It sounds like a great idea. Perhaps simplify it into createing a game about anything, but change the rules everytime a new game starts. So NTs will never really know the rules and have to discover the rules to win.
Ive done little graphics lately, I am more of a logic programmer than games. But I love your idea.
Dont try to learn how to program by reading a book. Just write a program. Start off simple. Slowly increase the lines of code you use.
Perhaps try to learn windows programs like visual basic and build a simple windows app first. It is very easy. Drag and drop buttons and image controls onto a form and get used to the mouse_move, and mouse_click events, that windows will build for you. You can obtain the screen co-ordinates easily and work out whereabouts on an image the user clicked.
If you have problems with logic in general then it may be hard to learn how to program for you. But if I were you I would learn and have fun, you may be suprised how much you learn in a short time.
I took an entire course on visual basic in high school. I was the only one in the class who couldn't grasp how the code worked. I can do if...then statements, but beyond that I'm totally lost. I think what I really need is for someone who understands how my mind works to sit down with me and walk me through the process. I say something concrete that I want to do, and they tell me how to do it, explaining each step - what it is, what it does, how it fits in with the overall program. I think in this way I could make progress - but I don't have anyone in my life right now who knows how to code. I've read plenty of books and tutorials and it just makes me stressed. I'm quite intelligent and have no problems with logic, or with language in general (I learn foreign languages very quickly and even difficult grammar comes very easily to me). So when I can't do something that it seems just about everyone else in the world is able to do, I get extremely stressed and anxious and it tends to end in tears.
Tutorials are useless. I searched tutorials and found this one. It started like this:
So the first hero actionscript will be:
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x--;
}
if (Key.isDown(Key.RIGHT)) {
_x++;
}
if (Key.isDown(Key.UP)) {
_y--;
}
if (Key.isDown(Key.DOWN)) {
_y++;
}
}
It’s easy, isn’t it?
And there we go, I already want to cry. WHY does that make something move? What on earth do all those things MEAN? And how DARE that jerk say it's EASY? I can read a reference manual explaining what every command is supposed to do, but it's like picking up a Swahili to Swahili dictionary - all the definitions just reference other things I don't understand. How do people learn what all this means to begin with? Why were all the beginner students in my class able to figure it out immediately and without help after reading a chapter in the textbook, while I just stared at the wall of text feeling lost? I learned to read when I was 3! I should be able to do this.
I did pass that course, by the way, by creating a final project. The other students were making clones of Space Invaders and the like. My project was a program where you enter text into a box, then set a number of seconds as a timer, then hit a button and after that number of seconds, that message would appear on the screen (as a prank error message). I think the teacher would like to have failed me, but he took pity on me because he saw how hard I worked. He advised me not to move on to C++ the next year with the rest.
I've been actively trying for 15 years. I am not exaggerating. Now and then I get overwhelmed with discouragement and quit for a few months, but I always come back and try again. No luck. It's the worst kind of frustration to not be able to do something after trying so hard for so many years. And when I have an idea for a game or digital artwork and present it to some programmers, they all say the same thing: learn to code and do it yourself. It's like a slap across the face every time.
By the way, maybe I should add that I have no trouble with computers in general. I use Photoshop regularly and without difficulty, even the advanced features. I never had any trouble with that. I think part of the problem is that I really think in a visual way. Coding is all just walls of text. Natural language I do very well with, but numbers and symbols, not so much. I think I could learn, but someone has to teach me in the proper way (and that's not the same way most people learn). If I could find a coding tutorial for artists or a flash tutorial for people who are already familiar with photoshop, that would be a huge help. All the tutorials I find are either focusing on how to create graphics and animations (which I don't need) or on coding, but with the assumption that the person reading the tutorial already understands how code works. :/
An idea might be to collaborate. Could you find a programmer (maybe via your local university) and present your vision to him/her - "hire" them as your technician. I bet someone would be flattered to work on such a project.
(I know what you mean about becoming overly stressed....sometimes the easiest things are hard. And I can be intolerably impatient with myself). For instance, I was friendly with a female physician - really gifted woman. She and her husband, also a physician, wanted to set-up a website - she simply could not do it. Plus, she really did not have the time to struggle with it. She already knew what she wanted so instead, using her own ideas, she hired someone. Whatever works.
_________________
The ones who say “You can’t” and “You won’t” are probably the ones scared that you will. - Unknown
I'd happily hire someone if I had money. I haven't yet found someone who will do it just for experience or credit. There's a bit of a language barrier regarding the locals. Many of the young people here (Prague) do speak English, especially those into computers, but I'm not a native here and I wouldn't know how to get in touch with university students. Still, it's an idea, and I can ask around. Thanks for the suggestion.
More than anything I want to be able to do it myself. I do have the time to dedicate. I know it must be possible, if only I could find the proper teacher. Maybe I should post on here (and maybe other web sites as well) looking for a patient tutor. I know exactly what I need to learn, and what questions to ask. I just need someone to answer them.
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x--;
}
if (Key.isDown(Key.RIGHT)) {
_x++;
}
if (Key.isDown(Key.UP)) {
_y--;
}
if (Key.isDown(Key.DOWN)) {
_y++;
}
}
I will make some assumptions here because I don't know where you got the code and what it refers to. The first line is a procedure header, an event procedure. Whatever onClip is then that is the event that has just happened for this procedure to be called and executed.
The rest, which looks like the instrunctions of the onClip event procedure, is giving instrunctions on what should happen if a particular key is pressed.
if (Key.isDown(Key.LEFT)) {
_x--;
}
So if the LEFT key, which I presume is the left arrow key on the keyboard, is pressed down then the value of x will be decremented. So x will decrease. x, I presume is one of the co-ordinates that states where the player is in the scene. x--, with a double minus sign means that you are reducing the value of x. So if x=10 when the key is pressed, this code will decrease its value to 9, then to 8, then 7.....and this will cause the player to move within the scene.
The following 3 statements will cause x to increase (x++), y to decrease (y--), and y to increase (y++).
x and y will be the screen co-ordinates of where the player is, or what the player is focusing on.
So the y plane is vertical and the x plane is horizontal.
I do not know what language this is, but I reckon it is doing what I just said. Perhaps someone else who knows the language can give a more fuller explanation.
BTW - not everyone can program, so don't feel stressed if you find it difficult.
Similar Topics | |
---|---|
Sunflower Lanyards - digitalisation/color coding idea |
18 Sep 2024, 12:42 am |
Favorite Video Game? |
10 Nov 2024, 2:32 pm |
The 10 Best Video Game Consoles of All Time, Ranked |
24 Sep 2024, 6:51 pm |
I made a game about 2 years ago, it drove me crazy |
21 Sep 2024, 9:34 pm |