Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
051ba2ec26 |
|
@ -1,3 +0,0 @@
|
|||
# My proposal
|
||||
|
||||
Lorem ipsum
|
|
@ -1,134 +0,0 @@
|
|||
# My proposal
|
||||
|
||||
**Name**: joowonkim
|
||||
**Student ID**: 20200150
|
||||
**Repository URL**: http://git.prototyping.id/20200150/homework5
|
||||
|
||||
---
|
||||
|
||||
## Table of Contents
|
||||
- [Game Title : "polygon alleyway"](#game-title--polygon-alleyway)
|
||||
- [Brief Description](#brief-description)
|
||||
- [More Description](#more-description)
|
||||
- [Game Component](#game-component)
|
||||
- [Implementation Plan](#implementation-plan)
|
||||
- [Detailed Plan](#detailed-plan)
|
||||
- [Expected Challenges](#expected-challenges)
|
||||
- [Class Features](#class-features)
|
||||
- [Code Implementation Plan](#code-implementation-plan)
|
||||
|
||||
---
|
||||
|
||||
## Game Title : "polygon alleyway"
|
||||
|
||||
## Brief Description
|
||||
This game is an FPS game where you roam around alleyways and shoot key targets to eliminate them.
|
||||
I got the idea from *airsoft* games.
|
||||
|
||||
---
|
||||
|
||||
## More Description
|
||||
- The player wins by eliminating key targets while avoiding enemies.
|
||||
- Player controls movement and shooting using WASD and mouse.
|
||||
- Hidden enemies, object collisions, and an HP system exist.
|
||||
- Bullets lose damage over distance and have ballistic falloff.
|
||||
- The game will look like a typical FPS scene, with guns, enemies, and 3D objects.
|
||||
|
||||

|
||||
|
||||

|
||||
Image from: [News article](https://www.chosun.com/national/weekend/2022/05/21/VW7LNLQHHNEAVLLZKKLNE3VQUU/)
|
||||
|
||||
---
|
||||
|
||||
## Game Component
|
||||
- 3D polygon character
|
||||
- 3D polygon gun
|
||||
- 3D objects (interact with bullets)
|
||||
- 3D enemies
|
||||
- Walls and obstacles
|
||||
|
||||
---
|
||||
|
||||
## Implementation Plan
|
||||
I plan to use Unity.
|
||||
|
||||
1. Background implementation
|
||||
2. Character movement and animation
|
||||
3. Shooting system
|
||||
4. Collision system
|
||||
5. Target objects
|
||||
6. Enemies that attack the player
|
||||
|
||||
---
|
||||
|
||||
## Detailed Plan
|
||||
- For character rigging and animation, I will use [Mixamo](https://www.mixamo.com/#/?page=2&type=Character)'s free assets.
|
||||
- Among them, I plan to use the character shown below:
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## Expected Challenges
|
||||
- Enemy movement and shooting AI
|
||||
- Player detection algorithm for enemy
|
||||
- Splitting upper/lower body movement based on mouse direction
|
||||
|
||||
---
|
||||
|
||||
## Class Features
|
||||
I plan to use the following features covered in class:
|
||||
|
||||
- Collision detection
|
||||
- Simple UI animations (e.g., HP bar)
|
||||
- Event-driven battle interactions
|
||||
|
||||
---
|
||||
|
||||
## Code Implementation Plan
|
||||
|
||||
The following classes describe the modular components that will make up the game logic in Unity.
|
||||
|
||||
---
|
||||
|
||||
### `PlayerMovement`
|
||||
Handles WASD-based movement for the player.
|
||||
|
||||
```csharp
|
||||
public class PlayerMovement : MonoBehaviour {
|
||||
public float speed = 5f;
|
||||
|
||||
void Update() {
|
||||
float x = Input.GetAxis("Horizontal");
|
||||
float z = Input.GetAxis("Vertical");
|
||||
transform.Translate(new Vector3(x, 0, z) * speed * Time.deltaTime);
|
||||
}
|
||||
}
|
||||
|
||||
```csharp
|
||||
public class PlayerController : MonoBehaviour {
|
||||
void Update() {
|
||||
Vector3 mousePos = Input.mousePosition;
|
||||
// Rotate character to face mouse position
|
||||
}
|
||||
}
|
||||
|
||||
```csharp
|
||||
public class GunController : MonoBehaviour {
|
||||
public GameObject bulletPrefab;
|
||||
|
||||
void Update() {
|
||||
if (Input.GetMouseButtonDown(0)) {
|
||||
Shoot();
|
||||
}
|
||||
}
|
||||
|
||||
void Shoot() {
|
||||
Instantiate(bulletPrefab, transform.position, transform.rotation);
|
||||
}
|
||||
}
|
||||
```markdown
|
||||
- `PlayerHP` : manages health and death logic
|
||||
- `BulletMover` : handles bullet movement and collision
|
||||
- `EnemyMove` : moves enemy based on player's position
|
68
PROPOSAL_20230412.md
Normal file
|
@ -0,0 +1,68 @@
|
|||
# Quetzalcoatl: The Fifth Sun
|
||||
|
||||
## Author Info
|
||||
- **Name**: Chaebean Yang
|
||||
- **Student ID**: 20230412
|
||||
- **e-mail**: kazed0102@kaist.ac.kr
|
||||
- **GIt Repository**: [Link](http://git.prototyping.id/20230412/homework5.git)
|
||||
|
||||
|
||||
## Game Description
|
||||
This game is based on [Snake Game](https://p5js.org/examples/games-snake/) and Aztec mytology. The player controls a serpent which grows longer by collecting sacrificial items. Upon reaching a score of 100, the serpent transforms into the Fifth Sun — completing the mythological cycle and the game ends.
|
||||
|
||||
- **Goal**: Reaching 100 points to become the Fifth Sun
|
||||
- **Lose Condition**: Collision with wall or self or run out of lives.
|
||||
|
||||

|
||||
|
||||
## Graphic and Game Screen Sketch
|
||||
Graphic Sketch
|
||||

|
||||
|
||||
Game Screen Sketch
|
||||

|
||||
|
||||
|
||||
## Game Elements and Implementation
|
||||
- Serpent: Quetzalcoatl-inspired
|
||||
- Items: heart, obsidian, etc.
|
||||
|
||||
|
||||
## Interactions
|
||||
- Arrow key movement
|
||||
- Eating items increases snake's body length and score
|
||||
|
||||
|
||||
## Tools and Libraries
|
||||
- **p5js**
|
||||
- **Adobe Illustrator**
|
||||
- **Git**
|
||||
|
||||
## Features from Class to Use
|
||||
- **Arrays** to manage snake's body segments and growth
|
||||
- **Conditionals and loops** to check for collisions, item collection, and movement
|
||||
- **Custom functions** for drawing and update logic
|
||||
- **HTML-JavaScript integration** to handle external inputs and update in-game UI elements
|
||||
|
||||
## Anticipated Challenges
|
||||
- Designing natural and smooth movement transitions between snake segments
|
||||
- Creating a coherent and symbolic color palette that reflects Aztec aesthetics
|
||||
|
||||
## Posible Future Features
|
||||
- Additional levels
|
||||
- Animated transformation between game screens
|
||||
- Game over screen with a graphic of Tepeyóllotl
|
||||
|
||||
## References
|
||||
- [Snake Game in p5js](https://p5js.org/examples/games-snake/)
|
||||
- Smith, Michel E. (2011). *The Aztec*. John Wiley & Sons.
|
||||
- Camilla Townsend. (2019). *Fifth Sun: A New History of the Aztecs*. Oxford University Press.
|
||||
- Davide Domenici. (2009). *The Aztecs: History and Treasure of an Ancient Civilization*. White Star Promotional.
|
||||
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
BIN
lib/50796479392_f18856016d_b.jpg
Normal file
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 18 KiB |
BIN
lib/Tepeyóllotl_1.jpg
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
lib/azteccal.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
lib/gamescreen.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
lib/graphic.png
Normal file
After Width: | Height: | Size: 79 KiB |
BIN
lib/images.jpg
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
lib/snake.png
Normal file
After Width: | Height: | Size: 1.8 KiB |