Eleventh Hour Update

Pieces are coming together. My game is 95% ready (art and movement tweaks, nothing that can’t take a few minutes for each). It’s exciting, and I may even have some hair left that’s not in my fists when I’m through. I kid of course, but since the deadline is this Thursday, with the Viz-A-Gogo exhibition opening a week from now, things are coming down to the end, and with that always comes some anxiety.

The stronger stepper motor came in early this week. It looks good and strong, just like the online sparkfun picture said. However one caveat is that I’ll need to solder short lengths of (probably 22 gauge–breadboard compatible?) wire to the wire ends of the stepper motor, since the ends are frayed by default. From what I can tell, another student, Sarah Spofford, is using the same or a very similar motor as I, so one question means answers for two students. Awesome when that works out.

Today, finish the plans; tomorrow, cut and glue them. I got the transfer between drawing my plans in Illustrator and importing them correctly into the AutoCAD woodshop template (on the correct layers for cutting), so that’s another interfacing issue of sorts solved.

Project’s being built, and the different pieces (game, dispenser, Makey Makey keyboard) are coming together. It’s likely that when I show this Thursday, the game sprites will still need work (I’m using holder images now that come with Game Maker but aren’t really polished for final work). Also, the pieces themselves can work on Mac or Windows, but the interfacing between the game and Arduino uses a DLL that (because it’s a DLL for one) require a Windows OS. I can still demo the operation with a mac, and manually set the dispenser wheel to dispense seeds (push a button to simulate the signal GM can send to the Arduino on Windows). Viz-A-Gogo will have a Windows computer, but for Thursday, a mac will work fine.

One thing on the keyboard–I’m leaning towards using apples for the 6 keys. For one, there are enough different color combinations with apples to be varied enough while still reading as, well, apples. They’re firm enough to resist a the bit of pushing, over and over, that the fruit “keys” will require. Plus the Makey Makey requires either enough metal or moisture to conduct the push signals, and apples certainly have plenty of moisture. It’s likely I’ll need to replace them between Thursday and when the show ends next weekend, but that’s just a matter of pulling the pins in the apples out and sticking them in another apple.

Knock on wood.

Tomorrow, I will complete the wood shop authorization process, so I can laser cut my dispenser design. It’s been several years since I last used the shop, and the authorization expires every year. Nothing too strenuous, just a quiz and safety tour, a signed form, and I’ll be good to go. I plan to have the pieces cut by the end of the week so I can put it together over the weekend. I ordered a new stepper motor that should work better for this project than the default one we have for this class.

Also, the Makey Makey arrived last week.

The timetable for all this has changed somewhat since I added the feedback of the dispenser, but with the simplification of the game and the wood shop stuff moving along, this can still be done.

Simply giving back to the Circle of Life

Expanding on the most recent project progress presentation, I’ve figured out a simple yet effective way for this project to give something back to the player.

First off, the game mechanics have been simplified, from something resembling Conway’s Life game to multiple simple interactions similar to the popular mobile game Fruit Ninja. For those unfamiliar with it (I’ve never played, just watched), the object is basically to swipe your finger across fruit flying across the scene. This is what I proposed a week ago in my April 2nd post, but with the automatic seed dispenser added. I will put up a more detailed description and pictures of the game once development gets farther along (within a week).

I’ve made a controller object in Game Maker (GM) and an Arduino program so that when a specific game event happens, GM sends a signal to the Arduino, which now…

…turns on the Arduino’s built in LED. But the process is there. If GM can correctly send a signal that is correctly interpreted by the Arduino, then that signal can activate anything. It’s a simple matter to increment the stepper motor a certain number of degrees each time GM sends the signal. The device is beautiful in its utter simplicity, yet I can see this working as good or better than any of the other more complicated devices I thought up since the most recent update.

The picture is below, but the basic process is a rotating gear like wheel that pushes a certain amount of seeds down and into a chute, from which they pour into a receptacle. For thematic reasons (planting, growth) I picture a small clay pot catching the seeds, which the artist/player can pick out (might need to rais the bottom of the pot for easy gathering. Picture this device, no bigger than a normal sheet of printer paper, and you are viewing it through its clear acetate side. The top hopper, wheel middle section that the wheel rotates in, and the chute are made from pieces of sandwiched wood, cut on the edge in the design shown. Two pieces, one for each side, say between 1 and 1 1/2 inches thick when it’s finished. Seeds would need to be small enough to fit in the turning wheel sections and chute, and also to not clog up the mechanism as they drop into the wheel. In other words, any shearing forces exerted on the mass of seeds should push the seeds back into the hopper, rather than seizing up the wheel. In  other words, most fruit or vegetable seeds should work, but corn or pumpkin sized seeds could cause problems. Maybe not, but smaller seeds have a better chance, and since this dispenser is largely symbolic about giving back to the player a reward for growing more objects in the game, the purpose is served. Maybe give multiple seeds (bird seed type mixture)? It’s all art, and this can be decided later.

Click on the thumbnail for a larger version.

seed dispenser

Project progress

The Makey Makey has been ordered, so that’s on schedule. It should arrive next week as planned.

Thinking more on my game, I’m drawn toward Cellular Autonama, particularly Conway’s Game of Life. One change that will greatly effect the implementation is that the cells will be hexagonal rather than square. Hexagonal tiles are common nowadays for strategy based games (more on this later), and I believe that hexagonal tiles are more aesthetically pleasing than square or triangle tiles (the only other regular polygons that can be fit together with no space left between their seams).

For future reference, the rules of Conway’s Game of Life are listed below. (http://www.conwaylife.com/wiki/Conway’s_Game_of_Life)

  1. Any live cell with fewer than two live neighbours dies, as if by needs caused by underpopulation.
  2. Any live cell with more than three live neighbours dies, as if by overcrowding.
  3. Any live cell with two or three live neighbours lives, unchanged, to the next generation.
  4. Any dead cell with exactly three live neighbours cells will come to life.

Conway found that these rules produced the widest variety of desirable representations. Some can die quickly, others can grow quickly, others can die or grow slowly, and so forth. Because this game will have six surrounding cells, instead of eight, the rules might be tweaked, but since the numbers are close in range, I’ll begin with the above rules and experiment from there.

The strategy element could be end conditions, like once the pattern stabilizes have only a certain number of tiles left alive, or have the tiles left alive be a certain color. Which brings me to my secondary goal, implement more than two states for the cell.

At this point, I see two main ways to decide the 3+ states for the cell, shown by color. If a cell is alive:

1. Color is determined based on which of the six sides are filled in relation to the other sides. For example, following the rules for Conway’s Game of Life, two cells on opposite sides of the hexagon in consideration would produce a different color than two cells touching each other next to the hexagon (think three collinear hexagons versus three hexagons all adjacent to each other). Both sets described above are “alive”, or colored, but the arrangement determines the color. This is currently my favorite, as I see it as a balance between not an excessive number of states to consider and still being able to produce aesthetically pleasing results with color.

2. Pretty much the same as (1) but color is determined or at least partly influenced by the color of surrounding cells. This is more complicated than (1) and so will likely just be a thought experiment for this particular project. Many times simplicity is beautiful, and (1) strikes that balance where (2) performs less well. Not saying it wouldn’t be beautiful or couldn’t be done (neither are the case, I’m sure), but this option is outside the scope and time of this particular project. Plus, this means more rules to explain to the player. Conway’s game has only four to consider; I don’t want this implementation to have much more. Still, this option is mentioned as a possibility for expansion.

Update:

After chatting with my professor, seconds before I wrote this paragraph, he suggested I explore more of a cyclical approach (give something physical back to the player), instead of a one directional approach (i.e. push a button to affect the game). Like once the player wins, give the player some seeds and encourage them to plant them. Just a possibility to consider, we’ll see.

Art Fruit project schedule

April 4:

*Have Makey Makey pieces ordered–project confirmed

*Have art game mapped out (what will happen based on player actions)

 

April 9:

*Have first game prototype completed to show

April 11:

*Makey Makey pieces arrive by now? Start testing different foods as keys–hook up and test game with food pieces

 

April 16:

*Have second prototype, requiring just tweaks.

*Have costume/prop pieces gathered. (knife, apron, chef hat?)

April 18:

*From Tuesday, have game to demo with Food Keys–take suggestions

 

April 23:

*Have suggestions incorporated into project, final game tweaks.

April 25: DUE

Final Project simplification and reorientation

Well, I was hammering out a specific schedule for my final project, and I came to the conclusion that I needed to greatly simplify my plan to allow for completion with a little extra time for tweaking and bug fixing. With getting the Arduino to communicate multiple data pieces to Game Maker, polishing the game (user interface, game objects), completing the game art, acquiring and building the controller, this project would not be completed by the time, and even if it was, it would not be polished enough to be proud of.

So I’m planning on doing something similar (building an unorthodox controller for a game I create) but simplified enough so that it can still present artistic, technical, and conceptual work, but not be so large that it can’t be completed and polished by the due date.

I actually came upon this option earlier while researching how to get Arduino to sync with Game Maker. I asked around on the internet, forums and the like, to see how anyone had solved similar problems, and one of the people I asked was very helpful and gave me two options for communication with Game Maker. One of those options I really started to get excited about the concept, and the site is here: http://www.makeymakey.com/

Makey Makey is a keyboard and mouse interface developed by two students from MIT that allows designers to, basically, use anything as a keyboard. It’s quite amazing, as the demo video, with real working examples, shows. In the end, pretty much anything can be used to transmit a signal: food, stairs, water buckets, even other people. Just hook up the object to the Makey circuit using an alligator clip or regular wire, and that object is a key. So how does this relate to my earlier project?

Well, this piece will have a performance aspect, in addition to the game and controller that anyone can play. Really thought, this game will not have a specific “win” condition, only a continual evolution of image, so it could be called a toy, that doubles as art. The toy will be simplified in purpose, and also execution, so that anyone can come along, and for even a few seconds, play with it, then leave if they want with no ill effects on the overall image. Objects can be moved on screen and interact with each other, but while no one is playing, it will sit there as generative art, in a sense. Each player contributes to the image on the screen. I also feel this “come and go” aspect will be more engaging for exhibition goers than a game with a definite beginning, end, winning/losing, and rules to learn. There will be rules to this piece as well, but only in the form of moving up/down/left/right, and choosing an object to move. When objects on screen touch, they will react in beautiful ways, producing more art objects to interact with, and so on. This simplicity should draw more people into the process of creating the image, and enjoying themselves while creating art.

So, what about the physical aspect of this, you ask? Well, in order to create the art, the artist/exhibition goer will first need to hook up the “keys” to the controller. I like the idea of using food for the keys, because since food is essential for life, now food will be essential for art, particularly this art. Players will choose what objects to use for each key based on their personal preference (a fruit/food bowl will be available to choose from). If, it turns out that the Makey kit works well with chains of food to conduct the signals, then I would like to incorporate that also, so players make their own connections. Imagine me, as the presenter, slicing an orange and overlapping the sections to allow a very tiny current that Makey requires, to be sent along the length. This particular overlapping sections idea is untested, but if it works, even for just a short length, it will be incorporated to add to the player’s involvement in creating the connections (itself artistic) in order to create the art.

No player made connections, no art is created or game like experience is enjoyed. So essentially, this is a very analog way of looking at DRM, as well as engaging the player. I have used “artist” and “player” to describe the same person interacting with my exhibit because both terms apply. Winning for the player will mean creating the connections to allow the “artist” side to help create the art. Until that artist decides they’ve done enough and leaves, and another artist can come along and generate even more art, evolving the images through their choices.

I am excited about this new direction, not just because I imagine it being visually engaging, both in a quick “come play with me” and a deeper “help me evolve this image”, but because of the practical side of this being very doable by the due date. Its simplicity will be both completable and engaging. After all this previous process with my earlier project idea, after all the research and testing, I agree with Prof. Galanter that my earlier idea presented very real issues with completion. This project can have an interesting design, as well as show attention to all three aspects: concept, aesthetics, and technology.