Wyo Visual Basic Game Program Specs
Design, pseudocode, and write a program that allows the user to play an entertaining, non-trivial game. You can write a "classic" game such as Hangman, TicTacToe, Concentration, Blackjack or one of your own design. See this page for other ideas. The game must not present or suggest graphic violence (decapitation, blood, etc.) Do not include any inappropriate references or student names either. See Mr. Minich before you write the code if you have any questions. Your grade will be reduced if he deems anything inappropriate. Your game must follow all of the specifications cited below.
You must first submit a typed PROPOSAL of your program in paragraph form. The proposal must explain how your program will work. You must staple a drawn interface of your game to this proposal. Mr. Minich will keep this proposal on file and match it with your final program. If your final program does not match this proposal, you will lose points.
You must turn in the code and a user manual. Your completed project must be saved to a folder named JohnDoeGame2009TicTacToe (substituting your name for "JohnDoe" and the name of your game for "TicTacToe"). All associated graphic, audio, or text files must be included in the project's Bin/Debug folder with no other extraneous, unused graphic, audio, or text files stored there.
You may view examples of VB games and programs at sites like vbcode.com, vbgames.com, and www.planet-source-code.com/vb. However, your final program must be your own work. Do not plagiarize significant amounts of code or algorithms from those sites. You must abide by any associated "Terms and Conditions". If you do use any techniques or short code segments from other sources, you must include citations and web page addresses in your documentation.
This game program
assignment can be used to satisfy the School District's graduation project
requirement. See your guidance
counselor for a blank form, fill out your part of the form, and forward
it to Mr. Minich with your game program.
You must have your program beta-tested by a 7th or 8th grader AND you must have a fellow VB student fill out a copy of the grading rubric.
Paperclip the following items together in this exact order when you submit your project
Specifications - This assignment is worth a significant number of points. You will be graded in each of the following categories.
user manual - 15 points
A typed user manual must be submitted with the final program. The user manual must have a neat and attractive cover page with your name, the name of the program and graphical illustration. There is no minimum required length for the manual but it should include ALL of the instructions necessary to play the game. You can include strategy ideas for your game in the manual and you can include screen snapshots of key stages of your game.
beta-testing - 5 points
You must have your program beta-tested by another student who has never taken Visual Basic Programming at Wyomissing preferably a 7th or 8th grader. The beta-testers must fill out, sign, and date the official Beta-Testing Evaluation Form. You may have your program beta-tested before it is complete. But, enough of your game must work in order for the beta-tester to evaluate the basic parts. You will not be graded on how much the beta-tester likes your game but rather how honest and complete he or she is when they fill out the evaluation form. If the beta-tester uses one word answers rather than detailed answers, you will lose points.
3 or more forms - 6 points
Your project must include 3 or more forms, including the required splash screen. Besides the splash screen, you could also present the directions to your game on a separate form and
the About information could be placed on a separate form. You MUST use Application.Exit() to be sure that all forms and files are closed when the user exits the program.
The names of my 3 forms are: ________________________ ________________________ ________________________
required VB methods & syntax - 9 points (3 pts ea.)
Your program must include at least 3 of the following commands or methods. You must highlight one occurrence of each item in the code printout and circle them below:
While loop, For loop, array, Rnd function, Timer object, ArrayList, custom-made animated gif, Flash movie, scrollbar control,DateAndTime.Timer function, radio buttons, scrollbar, code module, your own customized class, or any other interesting object that wasn't taught in our VB class (see Mr. Minich to get permission)
use of a method or function that you created - 10 points
You must make use of at least one method or function that you wrote from scratch.
The name of my method is _____________________________ It can be found in a form named _______________________________
use of a data or sound file & program portability - 10 points
You must use either an audio, video, or Flash media file and/or a text file. For example, you can write high scores, user names, or other data to a text file. You can read data from a text file. Or, you can play an audio file. If your program creates and writes to a file, make sure that it is stored in a folder that is known to exist on the user's hard drive . Both versions of your program, the VB project and the executable version, must be portable. See Mr. Minich if you have any questions about this requirement.
I used a ________________________ (audio / video / Flash / text) file that can be found in a form named ______________________________
adequate internal documentation - 15 points
The code for your program must be documented very well. Keep in mind that Mr. Minich may not know what you are attempting to do in certain sections of your code. The rule of thumb at this stage of your programming career is "the more internal documentation, the better." For full credit, your inline comments must not word-wrap when your project is printed out. They should stand out in the right margin and be easy to read. You may print your project in landscape orientation.
Coding Standards - 15 points
Your program must follow our class Coding Standards. If you have ANY questions about them, see Mr. Minich before you finish your program.
classroom productivity - 10 points
You are expected to work on the game program assignment when class time is specifically devoted to the assignment. It is your responsibility to have finished planning (interface and pseudocode) your project outside of class (i.e. as homework). You should devote class time to testing and debugging. If you are unproductive during class periods devoted to the game program assignment, you will lose points.
level of complication - 15 points
Your project must not be too simple. It must contain a significant level of complicated logic and algorithms to show that you have mastered the concepts taught throughout this school
year.
code and memory efficiency - 10 points
Your program must use reasonably efficient logic and coding. For example, you must use loops, arrays, methods, constants, etc. where appropriate. You must also use variable scope properly, using local and module-level variables where appropriate. Your program must also be as memory efficient as possible. Do not use unnecessary variables, arrays, and controls. You must have Mr. Minich's explicit permission to use any global variables.
splash screen - 10 points
The splash screen must include your first & last name. It must also include the name of the game and a message indicating that how the user must continue (press a key or click the mouse.) You should make the splash screen interesting with graphics, color, and/or animation. Your project must be set to start up with the splash form.
menu - 10 points
Your program must use a menu. As the first menu command, you must have a File menu with an Exit submenu command. You must have a Help menu at the far right of the menu. The Help menu
must have Directions and About submenu options. The correct letters must be used as access keys in the menu commands. You may add additional menu commands if desired as long as File is the far left and
Help is the far right.
File Help
Exit Directions
About
graphic image manipulation - 10 points
One or more graphics must be used in the program. You may create your own graphics or use clip art or graphics from the Web. Be sure to abide by copyright laws.
animation - 5 points
You must include some animation in the program. If your main game does not need animation, then add some animation to your splash screen.
user interaction - 10 points
The game must involve user interaction. The game can be completely mouse-driven or it can require the user to type on the keyboard at various points.
user interface & accessibility - 10 points
The user must have a pleasant experience running the program. Your program must include a standard Help menu with a submenu command Directions. Prompts and messages should be complete and understandable. The program should allow the use of access key combinations where possible. Be sure to set the TabIndex property values of text boxes and other controls properly. The user must be able to exit the program at anytime, even if the game is not finished. Your program must also follow standard Windows conventions, especially those that we have studied in this course.
originality - 10 points
Your final program must be largely your own work. While you may model your game on a classic such as Tic Tac Toe, you must add appropriate, interesting aspects to the game's logic and/or the interface of your project. If you learn techniques from other sources such as vbcode.com, you must implement them in your game in a fresh, original way. While you must follow the Terms and Conditions found at the site where you obtained snippets of code or ideas and cite their use and web site addresses in your documentation, you are still responsible for making the majority of your project you own handiwork and logic. See Mr. Minich if you have ANY questions in this regard. While this category is only worth 10 points, you can be penalized many points or receive a zero if you plagiarize from another programmer's game.
run-time - 15 points
The program must work correctly in all aspects. The game must also be stored in the designated folder inside your My Documents network folder.