Mod Jam {
Grade
Deadlines
- 🔥 Section B: 23:59,
28 October 2025 3 November 2025
- 🔥 Section AA:
23:59, 29 October 2025 4 November 2025
- 🔥 Section A: 23:59,
30 October 2025 5 November 2025
That is, you have four weeks from assignment.
If there is a serious need for an extension, contact your instructor at least 3 days before the final deadline.
Objectives
- Building strength with the basics of JavaScript, particularly variables, conditionals, and events
- Developing a sense of how a more complex program works and how to make changes to it systematically
- Finding surprising ways to change a conventional design through programming specifically
Brief
Starting with the frogfrogfrog Project. Add the following five new features to the experience making sure to do so with creativity in mind. (In a perfect world nobody else will have the same approach as you, but it’s okay if they do.)
- A title and instructions screen. Could the frog be used to start the game? Could the frog eat the title?
- An ending. How should the game end? Because the frog explodes with flies? Because it starves? How can you tell the game is over?
- A scoring system. But not just a standard number counting up on the screen.
- New kinds of fly movement. Sine wave? Random movement? Perlin noise? Teleportation? Controlled by a second player?
- New visual and/or audio effects. Frog’s eyes follow the fly? Sound effects for all major actions? Fly flaps its wings? Frog hops around instead of sliding?
For a perfect score, make sure to add at least two other features to the experience. You could consider:
- Visually bringing the fly back to the frog’s mouth on capture. Relative positioning needed for this
- A new control system. The keyboard is an obvious choice here? Or clicking where you want the frog to go? Or telling it where to go? Or having it move on its own? Or being able to control the tongue while it’s moving?
- etc.
Make sure to document your specific modifications in your README.md file as a bulleted list of changes made.
Feel free to borrow from any of the example code you’ve seen so far in the course, but make sure to attribute in your README.md.
How to start a project
Remember to take this basic steps to get going:
- Download the template project
- Rename that folder, maybe to
mod-jam
- Put that folder in your
cart253 repository somewhere
- Commit and push that change with a message like “Started the mod jam”
- Keep committing and pushing as you go along to max out your commitment grade
Advice
- Start early. Don’t delay thinking about the project. Get your ideas together early so that you’ve got a good amount of time to work on them.
- Start small. Think of the smallest possible version of what you want to make and make that first. Once it works, you can start adding to it.
- Seek help. Ask for help early to discuss your idea and work out ways to achieve it, as well as to get specific technical help as you run into problems. If you can’t think of an idea, ask for help with that.
- Be stylish. Make sure you read the style guide.
- Be committed. Remember your grade is heavily affected by your use of version control and writing good commit messages.
Submission
Submission will take place on Moodle. Go to the appropriately named assignment on the Moodle and then submit your work there.
Your submission should just be plain text that includes (substituting your GitHub username and any difference in the folder names):
- A link to your exercise code (e.g. https://github.com/pippinbarr/cart253/tree/main/assignments/mod-jam/)
- A link to your project running online (e.g. https://pippinbarr.github.io/cart253/assignments/mod-jam/)
🔥 Make sure that your project actually runs online before you submit 🔥
🔥 Make sure that comment your project before you submit 🔥
🔥 Make sure that you have written a README.md before you submit 🔥
Evaluation
See the assignment rubric on Moodle for details.
}