54 lines
2.1 KiB
Markdown
54 lines
2.1 KiB
Markdown
# 🚜 NovaFarma - Design Document & Pillars
|
|
*Konceptualna zasnova in arhitekturna pravila (Inspired by Stardew Valley)*
|
|
|
|
## 1. Core Pillars (Glavni stebri)
|
|
|
|
### 🎨 Vizualni Stil: Pixel Art Nostalgija
|
|
- **Tehnika:** Ročno narisan (ali proceduralno generiran) Pixel Art.
|
|
- **Renderiranje:** Vedno uporabi **`NEAREST`** neighbor filtriranje. Nobenega 'blur-a'.
|
|
- **Snap-to-Grid:** Sprite-i se morajo poravnati na piksle (Math.round), da preprečimo 'sub-pixel' napake.
|
|
|
|
### 📐 Perspektiva: 2.5D Iluzija
|
|
- **Trik:** Igra uporablja 2D mrežo, a z navpičnim zamikom ustvarja iluzijo višine.
|
|
- **Grids:**
|
|
1. **Ground Layer (Tla):** Ploščice (Tiles), po katerih se hodi. So 'ravne'.
|
|
2. **Object Layer (Predmeti):** Drevesa, zgradbe, igralec. Imajo 'višino'.
|
|
|
|
### ↕️ Depth Sorting (Y-Sort)
|
|
To je srce 2.5D motorja (`Antigravity Engine`).
|
|
- Objekti se rišejo v vrstnem redu glede na njihovo **Y-koordinato** na zaslonu.
|
|
- **Pravilo:** `Depth = BaseLayer + Sprite.y`.
|
|
- To omogoča, da igralec hodi "za" drevesom in "pred" ograjo naravno.
|
|
|
|
## 2. Arhitektura Motorja (Antigravity Engine)
|
|
|
|
Namesto MonoGame (C#) uporabljamo **Phaser 3 (JS)**, vendar s podobno strukturo:
|
|
|
|
### 🗺️ Tileset System (`TerrainSystem.js`)
|
|
Svet je razdeljen na dva nivoja podatkov:
|
|
1. **TileMap (Matrika):**
|
|
- Hrani tip tal (Trava, Zemlja, Voda).
|
|
- Določa osnovno prehodnost (Voda = neprehodno).
|
|
2. **DecorationMap (Objekti):**
|
|
- Hrani entitete na koordinatah (Drevo na 20,20).
|
|
- Ti objekti so neodvisni Sprit-i z lastno logiko (Health, Growth).
|
|
|
|
### 🔄 Game Loop (`Antigravity.Update`)
|
|
1. **Input:** Preberi vnose.
|
|
2. **Logic:** Premakni entitete, preveri kolizije (hitboxi).
|
|
3. **Sorting:** `depthSortSprites()` poskrbi za pravilno risanje.
|
|
4. **Render:** Phaser nariše sceno.
|
|
|
|
## 3. Gameplay Mechanics
|
|
|
|
### Kmetovanje & Nabiralništvo
|
|
- Interakcija temelji na **Grid Selection** (izbira kvadratka).
|
|
- Orodja delujejo na principu "Active Tile".
|
|
|
|
### RPG Elementi
|
|
- NPC-ji imajo urnike in obnašanje (State Machines).
|
|
- Ekonomija temelji na prodaji pridelkov.
|
|
|
|
---
|
|
*Ta dokument služi kot referenca za preobrazbo NovaFarme v polnokrven 2.5D RPG.*
|