Date (Completed/Modified): April 2012
Comments
This project was started by an artist with some concept art for the game. From the start, the group decided that this was going to be a competitive multi-player game. Furthermore, we did not have any initial clear design direction to begin with. Hence it took awhile to figure out the details for the game. The group worked on the project for about 4 months before halting. I continued fleshing out the design and working on the project for approximately another 7 months (casually working on it during the school year) to get a very basic prototype of the combat working. More than 90% of the programming was done by me. The credits are at the end of the video. The video does not do a good job of portraying how the game plays, so hopefully the below user-input (and design concept) descriptions will provide further insights. Furthermore, the video demonstrates a very rough prototype where many tweaks, modifications and additions can be done to improve the game. I have decided to stop working on this project for the moment to focus on endeavors that are more feasible to complete. I may revisit this project again in the future.
Controls:
w,a,s,d = movement
left-click = basic weapon fire (i.e., the green projectiles)
right-click = fire the current special weapon (the default special weapon doesn't need to be charged, but its effectiveness depends on the # of highlighted tiles consumed. The other 2 special weapons need to be charged)
left-shift = hold down for a duration (currently 2 seconds) to charge & activate the special weapon where the projectile splits into 5 balls upon hitting the arena boundary
spacebar = hold down for a duration (currently 2 seconds) to charge & activate the special weapon which fires a huge ball that is effective for absorbing projectiles
Basic Design Concepts:
The robots are made to be more vulnerable while charging up a special weapon or attacking (i.e., slower movement, reduced push resistance, etc.), which creates a trade-off that the player must consider.
The chargeable special weapon projectiles are designed to emphasize the concept of spatial control (e.g., limit the "space" where opponents are safe). Furthermore, they have 2 phases (loosely speaking), where their properties are different; this makes the combat more interesting by adding variability and freshness to the game as the concept isn't widely applied in other games.
The default special weapon is crafted to be a good damage dealer and is intended to act as a combo finisher or used to catch the opponent off-guard; it's supposed to be a "feel good" weapon.
Tools: Unreal Development Kit (April 2011 Version), Visual Studio 2010, nFringe, Mercurial
Languages: Unrealscript
What I Did:
Programmed the game-play elements, UI, camera, etc.
Designed the game-play concept and mechanics
Finalized the shader code (using a visual scripting language) for the colored hexagons
Documented and tracked key information such as bugs, game features, hacky fixes (to black box problems), etc.
Potential Lessons:
Motivations should be clearly identified from the beginning to aid in maintaining on-going interests; otherwise, participation won't last very long--in this case, ~3 months.
It's vital to figure out multiple ways to maintain and improve motivation. For example, keeping track of the motivational elements (in written form) can serve as reminders, getting positive feedback from outsiders can serve as validation to improve motivation, etc.
Continual aggressive recruitment of new members may be necessary to keep on-going participation as old members lose interest.
Date (Completed/Modified): July 2011
Executable: Download Link
Visual Studio Project Code: Download Link
Comments
I worked on this game with a couple of students (from the Video Game Developers Club) at University of California - Irvine. This was intended to be a game where the screen is projected onto the ground with multiple projectors, where kids with disabilities could play to gradually improve their ability to coordinate wheelchairs. However, it was never completely finished due to disinterest among team members. Hence there is only 1 level with some placeholder art. I did all of the coding for this project.
Tools: Qt, Tiled Map Editor, and Mercurial
APIs: RapidXML, FreeType, FTGL, and OpenGL
Languages: C++
What I Did:
Programmed collision detection, which handles 2D circles and rectangles
Implemented sprite & animation system
Parsed the Tiled Map Editor's XML file
Used Qt's API to play audio
Used FreeType and FTGL API to display True Type Fonts (TTF)
Potential Lessons:
Do not expect any obligations from members to participate when there are little (positive & negative) stakes; more specifically, social obligation tends to be ineffective. This project started out with about 10 members, but almost everyone who initially volunteered dropped out within the first couple of weeks.
Make the expected duration of the project clear to everyone at the start. The reasoning behind this is that the Game Jam Events are only 1 week long and it's the only sort of experience that many people in the Video Game Developers Club have, hence it is possible that the members who volunteered for this project expected it to take only a week.
Date (Completed/Modified): January 2011
Comments
This game was created with a group of students from the Video Game Development Club (VGDC) at University of California - Irvine for the 1 week long Game Jam competition.
Tools: FlatRedBall game engine, XNA 3.1, Skype, and Subversion
Languages: C#
What I Did:
Managed and directed the programmers (including setting coding conventions, assigning tasks, and tutoring)
Programmed game logic
Date (Completed/Modified): June 2010
Comments
This game was created with a group of students for a game project course at University of California - Irvine. We worked with artists from LCAD for the art assets. The audio artists mentioned in the credits are the original creators of some of the free audio materials we obtained from the internet. This project was developed over a span of 10 weeks.
Tools: XNA 3.1, Tiled Map Editor, Subversion
Languages: C#
What I Did:
Programmed the wrap-around map, where a map consists of multiple rectangular sub-maps (i.e., smaller maps) and each sub-map has a total of 8 neighbor sub-maps (due to the grid-based structure), which can be chosen arbitrarily; furthermore, the neighbor relationship between sub-maps do not necessitate symmetry. As a result of this, the full map extends indefinitely (due to the wrap-around effect). Some difficulties that had to be dealt with when implementing this feature includes handling unit positions, AI path-finding, rendering and collision detection. Note that if a map happens to consist of only 1 sub-map that is less than the screen size, then it is possible to see the same character multiple times on the screen.
Programmed algebraic functions to compute the positions of objects as a function of time
Designed (and programmed) the abilities for the enemy characters
Programmed the artificial intelligence (AI) for the enemy characters, which uses a grid-based A* search algorithm
Programmed the parsing of the xml file generated from the Tiled Map Editor
Developed the 2 levels for the game