Project 7: Enhanced List Manager or Adventure Game
Due: Tuesday, May 1st, 2018
Beginning May 4th, students will have view-only access to Canvas, so NO
LATE WORK CAN BE TURNED IN AFTER 11:59pm ON THURSDAY, MAY 3rd.
This is a hard deadline so make sure you don't cut it close.
Enhance your list manager app or your adventure game app by adding one
of the following features:
All list manager enhancements should satisfy the requirements for Projects
4 and 5.
They should use SQLite to store the list(s) and have a query that uses
a user-specified value.
All lists should be populated with data when the app starts so that it's
easy to see that scrolling and queries work correctly.
Download data from the network and merge it with local data on the phone, and
upload data to the network.
You will need to make a simple web app on a server to do this option.
One possibility is to use Google App Engine (https://cloud.google.com/appengine/) which has a reasonable
free option, but there are many other options.
In your documentation, tell me how I can see the data on the server so that
I can verify that data has been correctly copied from the app to the
server and vice versa.
Let the user create and name multiple lists of the same type (for example,
to-do lists for different days).
The user should be able to select and edit any list, and should be able to
move items from one list to another.
The user should also be able to delete a list.
Depending on what kind of list your app manages, add additional list-specific
features such as a scheduler for a to-do list or a menu planner for a shopping
Please get my approval for list-specific features.
Modify your adventure game map display to use OpenGL for graphics.
Use a timer of some kind to set a frame rate and animate the display.
Use sprite animation to display characters.
Scroll the map smoothly (pixel by pixel) instead of one row or column
at a time like we did for Program 6.
If you are making an iOS project, you can use SpriteKit to do this option.
Make entry and exit points on the map so that the player character can go
from one map to another.
Store the maps in XML or JSON files.
Each level should have a different tile set so that it's easy to see that
the character is in a different setting.
For example, you could have an overland map with a city entrance on it.
The overland map would have tiles for mountains, forests, etc., and the
city map (or level) would have tiles for streets and buildings.
Treasure and bad guys
Put a treasure on the map and create bad guys or monsters that roam the map.
If the player character gets to the treasure, the player wins the game.
If the bad guys run into the player character before the character finds
the treasure, the player loses.
Merge your list manager and adventure map display to add an inventory
feature to your adventure game.
Place items on the map and allow the character to pick them up to add them
to the inventory, and allow the character to drop items so that they show
up on the map.
Use GPS to make a simple augmented reality game.
When the player moves in the real world, the character moves on the map.
(This might not be a viable option since it would be difficult to test.)
If you would like to do something not listed here, please check with me.
Describe your design and include instructions on what your app does and how
to use it.
Design documentation should include the names of all classes that you write,
with the names of important methods, static data structures, and instance
Also describe other possibilities (classes, methods, and data) that you
considered and why you chose the options that you did.
Explain the problems that you encountered and how you resolved them.
Instructions should explain how to use all of the features for your app.
Keep in mind that if I don't know how to use a feature of your app you
won't get credit for it.
Annotated screen shots can be very helpful.
Your documentation should be in one of the following formats: HTML
(preferred), PDF, or Microsoft Word.
I will not install any software on my computer to grade assignments.
Put your documention and complete project directory (including source files
and resource files) in a zip file.
Turn in your zip file on Canvas.
Enhanced list manager or adventure game|
List manager deductions
-15 Lists are not populated with data when the app starts.