diff --git a/PROPOSAL_123456789.md b/PROPOSAL_123456789.md deleted file mode 100644 index 1a602df..0000000 --- a/PROPOSAL_123456789.md +++ /dev/null @@ -1,3 +0,0 @@ -# My proposal - -Lorem ipsum diff --git a/PROPOSAL_20256426.md b/PROPOSAL_20256426.md new file mode 100644 index 0000000..2a91907 --- /dev/null +++ b/PROPOSAL_20256426.md @@ -0,0 +1,41 @@ +# My Proposal + +- Name: Tomas Horsky +- Student ID: 20256426 +- Email: tomashorsky@kaist.ac.kr +- URL to forked repository: https://git.prototyping.id/20256426/homework5 + +## Table of Contents +- [My Proposal](#my-proposal) + - [Table of Contents](#table-of-contents) + - [The Game](#the-game) + - [Optional Features](#optional-features) + - [Implementation and Challenges](#implementation-and-challenges) + +## The Game + +I want to create an endless vertical platform jumping game, similar to [Doodle Jump](https://doodlejump-2.io/). The goal of the game will be to jump on small platforms and get as high as possible without falling down. + +The game will be controlled only by moving left and right, jumping will be handled automatically by the game periodically. The "map" of the game will be endless, and will be generated on the go, so every game will have unique platform arrangements. The higher the player goes, the more special platforms will appear, and the game will get harder. After the player dies, the score (height) will be saved to a leaderboard and will also be displayed during future games as a reference line. + +The types of platforms will be: +1. **Basic platform** +2. **Moving platform** +3. **Spring platform** (the player's next jump will be 3× higher) +4. **One-time platform** (disappears after one jump) +5. **Combined platforms** (moving spring platform, one-time moving platform, etc.) + +## Optional Features + +After implementing the base game, I may add some of the following features: +- **Power-ups** – such as a jetpack (which boosts height) or an extra life +- **Monsters and shooting** – monsters will spawn on platforms, and players will be able to shoot them by pressing the *up arrow*, monsters will kill the player by touching them +- **Cosmetics** – players will be able to customize their character +- **Multiplayer** – an option for two players on one PC competing against each other +- **Camera control** – an option to control the game using a camera, which will track the player's hand movement to move left or right + +## Implementation and Challenges + +I want to learn [Svelte](https://svelte.dev/), so I will develop the game using it. From other features taught in class, I am planning to use the [p5.js](https://p5js.org/) library for rendering the game, event handling to get the player's input and definitely some higher-order functions. + +I think the main challenge will be managing player movement and the upward movement of the game world so that everything feels smooth and responsive. Another challenge will be generating platforms in a way that makes the game progressively harder without becoming impossible. \ No newline at end of file