Presentation is loading. Please wait.

Presentation is loading. Please wait.

Department of Computer Science & Engineering

Similar presentations


Presentation on theme: "Department of Computer Science & Engineering"— Presentation transcript:

1 Department of Computer Science & Engineering
REU –Computer Game Design Melissa Muzzi, Mentor: Dr. Jing Wang Objectives Of The Project: To familiarize myself with game programming using the DirectX libraries. To learn the process of creating a computer game from idea to final product. To design a computer game, under the principles of software engineering, where at each playable level of the game: There will be a randomly generated amount of enemies, such that repeating the same level will produce a different set of enemies. The locations of the enemies will be randomly generated. The necessary landmarks of that level will be placed in randomly generated locations. Progress So Far: A. Created a game framework using the DirectX libraries for graphics, sound and input: 1. Direct3D: Added animated, transparent 2D sprites to the project. 2. DirectSound: Added sound files to the project and got familiarized with the Windows wrapper header file used for loading and playing sound files. 3. DirectInput: Added functions to allow for keyboard and mouse manipulations. B. Designed and implemented an algorithm that produced a grouping of randomly selected enemies which depended upon each enemy type’s difficulty level and the total amount of difficulty allowed for a specific playable level. Here, each enemy has a specific difficulty level, represented by a number. Sum = the sum of the difficulty levels of all of the currently selected enemies. Pseudocode for Algorithm 1. Eliminate the type of enemies that are greater than the level amount: For a given array of enemy types If (enemy.difficulty_level > level.difficulty_amount) Continue on to next enemy Else Add enemy to list of valid enemies 2. Run main algorithm: While (Sum < level.difficulty_amount) Randomly select an enemy If (random_enemy.difficulty_level + Sum > level.difficulty_amount) Do nothing Add enemy to list Sum = Sum + random_enemy.difficulty_level Validation of the Algorithm Above, the algorithm is distributed 10,000 times. Here the Amount is equal to 40, and there are four different types of enemies represented by difficulty levels 5, 10, 15 and 20. Notice that all of the combinations of enemies do not have an equally likely chance of occurring. Therefore, the algorithm is not considered to be valid and future work on it still needs to be done. Future Work Planned: 1. Design a collision detection algorithm which will govern the interaction between the dragon protagonist and that of the enemies. 2. Design algorithms that will distribute enemies and landmarks into specific locations in each playable level. 3. Need to create fighting techniques for dragon protagonist and those of a given type of enemy. Each enemy will have unique abilities according to their type. The dragon protagonist will start out with one or two low level abilities and will learn higher level abilities that will be needed for upcoming levels. Above is a picture of a 2D sprite animating across a background. I put together this framework following the book Beginning Game Programming, written by Jonathan S. Harbour. Neither the 2D sprite nor the background will be used in the actual game. However, the framework will act as the backbone upon which the game will be built. Department of Computer Science & Engineering


Download ppt "Department of Computer Science & Engineering"

Similar presentations


Ads by Google