SuperPlantGame is a game written in Java for my CISC275 Software Engineering course along with the Delaware Department of Transportation. This game was one of three chosen to represent DelDOT at the Delaware State Fair in 2012. I played a large part in the design of the game menu and control scheme, while the game on the whole was a practice in perspective and image manipulation. Making this educational game taught me about the need for real user testing, as well as the importance of good planning and engine design.
Froggy Went A-Courtin'
Froggy Went A-Courtin' is a 3D representation of the solution to a graph problem, written in C++ with OpenGL for my CISC220 Data Structures course. This project was interesting because we were able to work a normally dry (to most) graph problem into a storybook story about a freshly engaged frog, traveling a grid telling his friends about his wedding. The frog must find the shortest path from his house to all of his friends houses. As the video demonstrates, we represented the solution to the graph problem as a piece of land in 3D space, each block of that piece of land having a different height. The frog can only travel to blocks that at a height of plus or minus 1 from the height of the current block, and every block must be reachable. We created the characters and houses in a 3D modeling program and read the 3D images into our C++ program and displayed them using OpenGL.
LEO Bertation Gamemaker
LEO Bertation Gamemaker is a level editor and game simulator written in Java for my CISC181 Intro to Computer Science II course. This application was a practice in abstraction, as we created a world in which the player could do whatever he or she wanted, so in order to properly handle all possible user interactions, we had to know each piece's relationship to every other piece beforehand. Starting with a nicely abstracted model helped make this undertaking a lot easier than it could have been.
Snowball Fight is a game written in Python using the spyral visual library for the XO laptops as part of the One Laptop Per Child program. This educational game was written for not only my CISC374 Educational Game Development course but also a classroom of students at the Chester County Community School (CCCS), with who we coordinated and planned the game. This game was my first foray into Python programming, with which I was very impressed. Being used to writing games in the strongly-typed Java language, the non-type-safe Python language was a nice change of pace. I found the looseness in both the typing and in the language's structure made the coding go by much faster (most of what you see in the video was written in less than 3 days), but I found that it could get a bit confusing once you had multiple class files, each more than a couple thousand lines each. All in all though I'd say this game turned out quite well, albeit being very simple, but it got the point across to the students in an entertaining and addicting way.
Asteroids is a game written in Dr.Racket/Scheme for my CISC108 Intro to Computer Science course. This game is written in a functional programming language, and was my first experience ever with functional programming, which made this a very interesting project. The only part that I was unsatisfied with in this game is the fact that Dr.Racket was unable to detect multiple key presses simultaneously, so the movement of the spaceship through the asteroids is a bit more choppy than it should be, but overall this game came together well if I do say so myself (and my professor agreed!).