I’ve selected some good materials to complement the lectures, problem sets, and programming projects; don’t skip them. (Short on time? Watch videos at 1.5x or faster.)
Please watch:
Please skim:
Please read:
You may work in groups of three for this assignment, but the usual rules apply: do not split the work. Everyone in the group needs to proofread every short answer, and everyone in the group should look over and review all of the code.
You will be adding to repository you created earlier, ending up with the following structure:
. ├── README.md ├── .gitignore ├── homework1 │ └── Files for Homework 1 ├── homework2 │ └── Files for Homework 2 └── homework3/ ├── short-answer-problems.md └── littlektah/ ├── app.js ├── (other files like package.json, etc.) └── public ├── littlektah.html ├── littlektah.css └── littlektah.js
Submit your work as a GitHub Pull Request. Make sure the PR is produced by 23:59 in the America/Los Angeles time zone on the due date. (You can produce the PR by doing all your work on a branch, then clicking the New Pull Request button in GitHub.) I will grade by commenting on your PR.
Since your GitHub repo was set up in an earlier assignment, there are only a few things you need to do for this one.
node_modules
😰)
Make sure you use an IDE with a built-in linter or use VSCode or Atom with the proper plugins and linters. You are too experienced to be turning in un-linted code.
Write the answers to the following in nice markdown format and submit in short-answer-problems.md
In Comer, 5th edition, do 6.20, 7.2, 7.8, 7.23, 13.8, 13.11, 18.12, 21.4-21.13, 23.2, 23.5, 23.22, 24.3, and 24.9.
In the notes on WebSockets, we saw a little application called Party, in which multiple “players” mindlessly ran around a shared canvas, without purpose. Everyone in the party could see everyone else. WebSockets are fun.
For this assignment, extend the application to a game as follows:
/
and the game page should be /game
./game
without having first entered a unique name, the user should be silently redirected to the home page.setInterval
here.You may enhance the game with beautiful artwork as time permits. I understand that this is a networking class, not a UI/UX course, but a little pride in your work, and a little practice, can’t hurt. Don’t go overboard though; get help from an artistically-minded fried if you like.
If you need some inspiration and perhaps some stealable code, check out:
Don’t forget to make use of office hours and even class time to ask questions if you get stuck.
What’s with the name?
The name “Little K'tah” is an homage to the famous K'tah, which you might want to play someday. The version you are writing is 2-d only, does not require a lobby, nor capabilities, nor levels.