Thursday, November 12, 2009

Game Development Happenings

This week has been heavily laced with programming for me! I have, here, a few screenshots of things I've spent a few hours on each:



1) Chapter 3 of The Game Maker's Apprentice: Galactic Mail. In it, you pilot a slow-turning ship through a starfield to deliver mail to planets, avoiding asteroids along the way. The book encourages you to make the ship pilot like molasses, for some reason; the game is very difficult to beat unless you jump directly from planet to planet, abusing one of the central mechanics. Even so, it taught me how to use named variables to sort out movement parameters, and how to use multi-layered .gifs to create dynamic sprites -- both useful skills I intend to exploit in the future.



2) Chapter 4 of the Game Maker's Apprentice: Lazarus! Despite its somewhat cool-sounding name, it's a stupid game about stacking falling crates. However, it taught me one important thing: when creating a character, you can easily make him/her a series of connected objects that only appear under certain circumstances and, if the transition is seamless, no one will be the wiser! When I read this, a supernova of ideas went off in my head, which are all saved on a Google Document to which only I have the working link. ;3



3) All this work has made me decide to mess with Photoshop to create a series of sprites for that Dream Tower demo level, the concept art of which I uploaded to my Picasa a while ago. This is all the work I've done so far: Fritz standing/running, and four ground sprites to simulate perfect diagonal surfaces. I haven't gotten to animating or programming any mechanics for these, though -- I still have quite a few chapters to go before I stand a chance of having it control how I want. Still, this was fun! I hope I get some more time to continue this work in the near future.



4) I started messing around in Scratch at home! I came up with a few ideas for making this into something you'd call a "game" -- I'm rather proud of them, actually -- but there are a couple of things I need to figure out first. Still, exciting! (the sprites are mine, of course)

CS 1107 Assignment: Post About Alice



Above is a screenshot of the web site for Alice, a classy-looking programming language developed at the Carnegie Mellon university. Much like Scratch, it was created as an object-oriented interface through which students can learn the basics of computer programming in a fun and helpful environment.



Unlike Scratch, however, Alice is capable of rendering three-dimensional objects in real time. Students pick from libraries of 3D objects -- many user-created, others provided by massive companies like Electronic Arts -- and arrange and animate them as the student sees fit. Personally speaking, I don't like to work in 3D; the complexity of the graphic elements can be very complicated and lack the longevity desired of a truly lasting product. Despite this, Alice is clearly a helpful resource for those who don't feel the same way as I do, and for this reason its existence alone should be commended.



They also have a separate program called Storytelling Alice! It is focused less on game development and more on higher-level animation scripting, making it more ideal for telling complex stories. Again, for those who prefer not to have their stories told by set clusters of pixels in the shapes of robots, vikings, or cute animals, it looks extremely recommendable.

Thursday, November 5, 2009

CS 1107 Assignment: Scratch Game 1

The three images that follow are from this evening's CS 1107 assignment! We actually did something related to game design: we messed with a scripting mechanism by the name of Scratch, developed by MIT for the purposes of teaching beginner's code in a safe and object-oriented environment. As I am just starting to code outside basic HTML, this is a somewhat valuable resource to me.

Tonight, we messed around with scripting mechanisms; we came to a point where we learned how to program character movement and established global actions. Screenshots are below; more will follow.