CS320n - Assignment 1
Placed online: Wednesday, January 28
Due: Friday, February 6 before 11 pm. (Instructions on how to turn in assignment are included on this page.)
Value: 50 points. (about 7% of final grade)
Purpose: To learn to use the course software. To create an animation of your choice using both design and implementation. You will use the concepts you have learned in up through Chapter 2 of the Alice book. This is an individual assignment. You may talk to other students in the course about your design and for ideas, but you are to create the complete Alice program by yourself. You may receive help from the instructor or the TA.
In the movie Finding Nemo there is a scene where the two protagonists, Marlin, a clownfish, and Dory, a regal blue tang fish, are trying to determine how to get to Sydney, Australia. Dory asks a school of fish for help. In an attempt to cheer Dory up the school of fish play charades with Dory, forming various objects by moving around and asking Dory to guess what they are. (I showed the clip of this in class on Wednesday.) You are to create a program where a school of fish play charades with two other fish. The program should follow this basic outline / design / storyboard.
two fish swim up to a school of fish (the school of fish must have at least 3 fish, but no more than 10)
one of the fish in the school asks the two fish if they like charades
the two fish should turn to face the school and acknowledge they would like to play
the fish in the school should then move to form some object and then give a clue to what the object is. (Okay, its not regulation charades.)
the two fish should make some guesses as to the object and eventually get it right
the two fish should then swim away
It is okay if your fish simply move. They do NOT have to have a realistic swimming motion.
DO NOT use the Lilfish object that comes from Alice for your fish. This is a huge model, over 2 megabytes in size, and a program with multiple Lilfish objects will be very large and possibly very slow. Instead download the fish in the following table. Click on a link to save to your computer. DO NOT USE THE OCEAN FLOOR OBJECT. Use a simple world and move the fish and camera under the ground to simulate the ocean.
Model Name and Link Size blueminnow 58 kilobytes Fish 40 kilobytes Goldfish 30 kilobytes pinkminnow 49 kilobytes yellowminnow 46 kilobytes fishy 275 kilobytes (use 1 at most) Shark 40 kilobytes To add the fish to your Alice program either download them to or move them to the following folder on the computer you are writing the program. Alice -> Required -> gallery -> Ocean
You can also download and use models / objects from the online Alice gallery.
Create a text based story board for your program. You can use
the problem description above and expand on it for your version of charades.
Save this as a plain text file. Most word processors allow you to save files
as plain text or you can use a text editor like notepad. If working with
Microsoft Word you can save a file as plain text by
following these instructions. The name of
the file that contains your storyboard will be your UTEID followed by a dash and s1. For example my UTEID is
scottmd so the file with my storyboard would be scottmd3-s1.txt
Implement an Alice program for your storyboard.
Requirements. While implementing the program you must have the following
elements.
The name of your world shall be your UTEID followed by a dash and a1. For example, my UTEID is scottmd3 so my world would be named scottmd3-a1.
Your world must have at least 5 fish. (The original 2 fish and at least 3 fish in the school that form an object.)
The objects must interact with each other in the following ways. There must be at least one occurrence of each of the following between some pair of fish
Two fish turn to face each other
One fish moves towards fish
One fish is a vehicle for another fish and the two move together
You must use the DoTogether and DoInOrder blocks including some nesting of these blocks.
Turning in your assignment. The assignment must be turned in
no later than 11 pm on Friday, February 6. To turn in your assignment you
must have your Microlab account id and password. Use these to turn in the
program electronically using the Microlab turnin web page. Refer
to this web page for instructions on using
the turnin web page.
Tip. When you set up your world there are many times you want to move the camera to place some objects or look at ones that you have already placed. When you are done you want to move the camera back to the exact position you started at which is difficult with the camera move commands and cubersome with repeated undos. Here are the steps to get the camera to move back to the exact location you had it before you moved it.
In the object placement view click the more controls >> button.
When the expanded controls are shown click the drop dummy at camera button:
In the objects tree this creates a Dummy Objects folder with one element named Dummy. It may be useful to rename the dummy objects so that is it is more meaningful. Something such as initialCameraPosition.
Now you can move the camera any where you want in the scene to place objects not initially in view or tweak the position of objects. When you are ready to move the camera back to its initial position click the button under the move camera to dummy label and select the dummy object that is the initial position.
This will reset the camera to the initial position. You could also drop another dummy at your "off screen" objects or scene to allow you to move easily back and forth between the two.