Lecture 9

Menti.com  - 217256

Epic LAB fail here...

LAB Grades

5 = ⭐️⭐️⭐️⭐️⭐️✅

4 = ⭐️⭐️✅✅✅✅

3 = ✅✅✅✅✅✅

 

There will be more labs for those who want to learn more JS or earn more stars

Group Project

Homework: Form groups 

anyone alone by March 29, will be paired

automatically assigned a teammate

Deadline for presentation.

doodle.com/kohlin

Group size

  • Minimum 2 students
  • Maximum 3 students

Project ideas

  • Come up with something exciting
  • Write an Elevator pitch 
  • Get it approved via email to Johan

Elevator pitch

Breakout: a game where you control a paddle at the bottom of the screen to hit a ball upwards, and at angles, to break bricks. The goal is to break all the bricks, and not let the ball through the ground too many times.

EXAMPLE

Need an idea for a project?

  • What's your favorite game - arcade game, board game, sports game? Could you make a simplified, digital version of that? Could you mix it up a bit, like give it a different theme or main characters?

  • What are your other favorite academic fields? If you love art, could you make an art-making program? If you love history, how about an interactive timeline? If you love science, how about a scientific simulation? 

  • What's your favorite movie or TV show? Could you make a digital version of a scene or character from it? Maybe make a game based on it?

  • What's a real-life gadget that you love? Could you make a simulation of it?

  • Special case: Pedagogical cartoon explaining programming (contact me)

example #1

The virtual pet game

Game idea: Nurture a virtual pet that has health, energy and happiness values. These values will automatically decrease as time passes, and the user will have options to increase the values one by one. If the pets values are too low it dies. Its emotions will change through time. In addition, we will have a point counter based on time, for example the longer the pet lives the more points you get. We will continue to add as many details as we can near the end to make the game more complicated.

example #2

Basic Requirements

  • HTML + CSS + JS
  • Granted Elevator Pitch
  • 8 weeks x 10 h - 80 hours per student

Grades 4-5

-You show that you can expand upon the skills you learned so far and develop it further by learning new things* on your own.

-The code is neatly structured and well commented.

-Each group member keeps a daily log

-Presented no later than May 29

* A JS framework like Vue.js or a library like P5.js, AJAX, API's etc

Presentation

  • May 27-29
  • Book your 30 presentation at  https://doodle.com/kohlin
  • Be well prepared! Time's up after 25 minutes.
  • Each group member can Explain the code to pass.

GETTING STARTED

Mockups

Feature priority-list

(P1) Game scene

  • (P1) User-controlled paddle
  • (P1) Multiple colored bricks
  • (P1) Angled ball movement
  • (P1) Collision detection
  • (P2) Life display
  • (P2) Score display
  • (P3) Sound effects

(P2) Main Scene

  • (P2) Play button
  • (P3) Help button

(P3) Help Scene

  • (P3) Text
  • (P3) Back button

(P2) Win Scene

  • (P2) Headline
  • (P3) Fireworks animation

(P2) Lose Scene

  • (P2) Text
  • (P3) Restart button

MVP

Minimum Viable Product

Whiteboard planning

  • Planning your objects
  • Naming conventions
  • Work distribution
  • File sharing
  • Graphics needed

Track your time

First freelance job

What should I charge?

How much time will this take?

Always track time on school projects