diff --git a/IMG_9134.jpg b/IMG_9134.jpg deleted file mode 100644 index fdebd69..0000000 Binary files a/IMG_9134.jpg and /dev/null differ diff --git a/IMG_9135.jpg b/IMG_9135.jpg deleted file mode 100644 index 01a791b..0000000 Binary files a/IMG_9135.jpg and /dev/null differ diff --git a/PROPOSAL_20254499.md b/PROPOSAL_20254499.md new file mode 100644 index 0000000..cbb6787 --- /dev/null +++ b/PROPOSAL_20254499.md @@ -0,0 +1,120 @@ +# Topic +Finding the Best Seat: Cafe - Study Survival Game + +**Name:** Jieun Lee +**Student ID:** 20254499 +**My Fork URL:** https://git.prototyping.id/20254499/homework5.git + +## 1. Game Overview +This project is a top-view mini video game set in a cafe. +The player controls a student character who wants to stay focused and complete their study session. +The goal is to maintain concentration until the study progress reaches 100%, while dealing with moving NPCs, noise, and changing seat conditions. + +============================================================================= + +## 2. Game Mechanics +# 2.1 what does the user have to accomplish? +The player has to help the character complete their work within a limited time while maintaining a positive focus level. + +- Each seat has different conditions such as noise level, proximity to moving NPCs, and overall distractions. +- NPCs move around the cafe and dynamically affect the player’s focus. +- The player must continuously decide whether to stay, move to another seat, or take actions to recover focus. + + +# 2.2 How do you win or lose? +**Winning condition:** +The study progress reaches 100% (visualized as a progress bar). + +**Losing condition:** +The focus level reaches 0, and the character gives up and leaves the cafe. + + + +# 2.3 What type of interactions are possible? +- Move to another seat with arrow keys +- Buy a drink or snack for a temporary focus boost +- Avoid noisy or crowded zones +- Respond to environmental changes caused by NPC movement + +============================================================================= + +## 3. Visual Style and Game Elements +A top-view cafe layout with tables, seats, counter, entrance, and moving NPCs. + +# 3.1 Main elements +Player +NPC customers +Seats +Focus meter +Timer +Drink counter / item zone +UI text for score, level, and status + +# 3.2 Visual tone +Simple 2D shapes and icons +Readable colors to distinguish quiet seats, noisy areas, and interactable places +Cute but minimal design for clarity + +# 3.3 reference images + + + + +============================================================================= + +## 4. Implementation Plan +# 4.1 Conditions +if (gameState === "start") : Shows the start screen +if (gameState === "play") : Runs the main gameplay +if (focus <= 0) : Triggers game over when focus reaches 0 +if (workProgress === 100 && focus > 0) : Winning condition + +# 4.2 Variables (not finalized yet!) +- 'focus' +- 'Distraction' +- 'timer' +- 'gameState' +- 'currentSeatIndex' +- etc.. + +# 4.3 Loops +I will use loops to: +- update all NPCs, +- draw all seats, +- and check nearby distractions. + +# 4.4 Arrays and Objects +I will store: +- NPCs in an array, +- seats in an array of objects. + -> Each seat object will include information such as position, distraction level + +# 4.5 Classes +- 'Player' class +- 'NPC' class + +============================================================================= + +## 5. Features Learned in Class +This project will clearly use several programming elements learned in class: +- basic p5.js drawing setup (e.g., rect(), ellipse()) +- conditionals +- variables +- loops +- functions +- arrays +- objects +- classes + +============================================================================= + +## 6. Main Challenges +- Implementing the overall system itself will be a challenge as a beginner. Since it requires combining multiple elements such as movement, NPC behavior, and focus management into a cohesive game. +- Balancing the game difficulty +NPC movement and focus decrease should feel challenging but not unfair. +- Making the cafe environment readable +The player should understand which seats are better or worse without too much confusion. +- Creating simple but believable NPC movement +NPCs should make the cafe feel alive while still being manageable in code. +- Designing a focus system that is easy to understand +The focus meter should clearly reflect the effect of noise, movement, and drink items. \ No newline at end of file diff --git a/ref1.png b/ref1.png new file mode 100644 index 0000000..d474f30 Binary files /dev/null and b/ref1.png differ diff --git a/ref2.png b/ref2.png new file mode 100644 index 0000000..66ec42d Binary files /dev/null and b/ref2.png differ diff --git a/ref3.jpg b/ref3.jpg new file mode 100644 index 0000000..a95762f Binary files /dev/null and b/ref3.jpg differ