Skip to content
 
 

Repository files navigation

CSC120-FinalProject

Deliverables:

  • Your final codebase
  • Your revised annotated architecture diagram
  • Design justification (including a brief discussion of at least one alternative you considered)
  • A map of your game's layout (if applicable)
  • cheatsheet.md
  • Completed rubric.md

Additional Reflection Questions

  • What was your overall approach to tackling this project? Firstly, I came up with the rules of the game, this is inspired by my Discrete Math class which we talked about game theory and specifically nim game. Then based on that, I starts to draw the first draft of architecture diagram, where I set classes one for light objects, one for organizing light objects(ChristmasTree), and one for user interface. Next, I started coding, I first try to play the game in terminal with input and output, refined some methods, then I start to build the user interface where I encountered many small bugs, but with the help of search engine, I eventually made it work.
  • What new thing(s) did you learn / figure out in completing this project? How to build an interactive, non-linear user interface using java GUI. To be specific, I learned how to create frame, panel, button, and message. As well as formatting, inserting image and so on.
  • Is there anything that you wish you had implemented differently? I wish I could make the interface look nicer, now it seems toooo simple.
  • If you had unlimited time, what additional features would you implement? I would add another feature that let some random light buttons behave differently(i.e. instead of turning on the selected light, when confirmed, It turns on the light above it, or the entire floor), because now there's a must-win strategy. I would also make it more interactive by allowing players to input their names and display that in winning message. Also, I would spend more time debugging.
  • What was the most helpful piece of feedback you received while working on your project? Who gave it to you? Honestly, for this project, I worked on it mostly on my own. First, it's because I decided to do it individually, but there's another reason: I felt very ill over the past week. I had a high fever, went to the health center a couple of times, and stayed in bed for several days. As a result, I wasn't able to attend classes or go to office hours. However, starting from Sunday (12/9), I began to feel better and spent most of my time catching up on the project's progress (that's also when I wrote the majority of the code). On Monday (12/10), I tried to go to Ab's office hours but didn’t find anyone there—maybe there were no time slots available that day? Anyway, I finished it at the last minute. My roommate helped me with formatting, and by playing it with her, I spotted and fixed some bugs.
  • If you could go back in time and give your past self some advice about this project, what hints would you give? Don't aim too high at first; start with things you know how to do, or you'll feel overwhelmed.
  • If you worked with a team: please comment on how your team dynamics influenced your experience working on this project.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages