[Dragonfly]

IMGD 3000 Project 1

To Catch a Dragonfly

Due date: January 20th, 11:59pm


The goal of this project is to get used to Dragonfly, a text-based game engine. You will work through a tutorial that has you make a simple game using Dragonfly. This will help better understand a game engine by developing a game from a user's perspective, providing the foundational knowledge needed for building your own Dragonfly (project 2) and designing and developing your own game from scratch with it (project 3).


Top | Details | Submission | Grading

Details

You will work alone for this project (and the next one). This will ensure you have the development skills needed even if your tasks in project 3 (making your own game) are more partitioned. While you can discuss the project with other students and even help each other debug code, you must write all code yourself.

The assignments is to:

  1. Visit the Dragonfly Web Page and briefly familiarize yourself with the contents.
  2. Download the Dragonfly game engine for the environment of your choice and setup your development environment.
  3. Complete the Saucer Shoot tutorial, available on the Dragonfly Web page. Note, the tutorial has all sprites needed for development as well as working code for the completion of each step, but should still be done to ensure you understand Dragonfly and can complete the next step. Note, the Dragonfly Documentation may be helpful for this and the next step.
  4. Extend the Saucer Shoot game in some fashion. This means adding additional code (with any sprites, as well) to extend the game functionality in some meaningful way by 10%. The end of the tutorial has some suggestions, but is by means the only way of extending the game. The actual extension is up to you, and you will indicate what you have done with a short README document when you turn in the assignment.


Submission

Your assignment is to be submitted electronically via turnin by 11:59pm on the day due. You must hand in the following:

If you do not have your files on the CCC machines, then copy your entire working directory to your CCC account. Then, login to the CCC machines (using slogin or putty). Use tar with gzip to archive your files. For example:

    mkdir lastname-proj1
    cp * lastname-proj1  /* copy all the files you want to submit */
    tar czvf proj1-lastname.tgz lastname-proj1  /* compress */
Submit your assignment (proj1-lastname.tgz):
    /cs/bin/turnin submit imgd3000 project1 proj1-lastname.tgz

Following this, you should verify that your files have been entered into turnin by executing the following command:

    /cs/bin/turnin verify imgd3000 project1

If you need more information, see Using the turnin Program for additional help with turnin.


Grading

Grading Guidelines
Tutorial 40% Doing the tutorial without any additional customization is worth about 1/2 the grade. While you will have learned a substantial amount about Dragonfly, you will not have demonstrated an in-depth understanding of the principles.
Customization 50% Extending or modifying the tutorial game with custom work is worth 1/2 the grade. Doing so will begin to flex your technical muscles and show mastery of the basic concepts of the Dragonfly game engine. This is essential moving forward.
Documentation 10% Not to be overlooked is including the documentation provided and having that documentation be clear, readable and pertinent to the assignment. This includes the README described above as well as the GAME document. Having well-structured and commented code is part of Dodcumentation, too. Getting in the habit of good documentation is important for large software projects, especially when done in teams.

Below is a general grading rubric:

100-90. The submission clearly exceeds requirements. The tutorial game works without problems. The custom extensions exhibit an unusually high degree of effort, thoughtfulness, technical ability and insight. Documentation is thorough and clear.

89-80. The submission meets requirements. The tutorial game works without problems. The custom extensions exhibit substantial effort, thoughtfulness, technical ability and/or insight. Documentation is adequate.

79-70. The submission barely meets requirements. The tutorial game may operate erratically. The custom extensions exhibit marginal effort, thoughfulness, creativity and/or insight. Documentation is missing details needed to understand the contributions and/or to build the programs.

69-60. The project fails to meet requirements in some places. The tutorial game may crash occasionally. The custom extensions are of minor scope, or exhibit perfunctory effort, thoughfulness, technical ability and/or insight. Documentation is inadequate, missing key details needed to understand the contributions and/or to build the programs.

59-0. The project does not meet requirements. The tutorial game crashes consistently. The custom extensions exhibit little or no evidence of effort, thoughfulness, technical ability and/or insight. Documentation is woefully inadequate or missing.


Top | Details | Submission | Grading

Return to the IMGD 3000 Home Page

Send all questions to the TA mailing list (imgd3000-staff at cs.wpi.edu).