COMPLETED FEATURES: Custom Sprite Integration: - Player, Zombie, Merchant sprites (0.2 scale) - 11 custom sprites + 5 asset packs loaded - Auto-transparency processing (white/brown removal) - Gravestone system with atlas extraction 2.5D Minecraft-Style Terrain: - Volumetric blocks with 25px thickness - Strong left/right side shading (30%/50% darker) - Minecraft-style texture patterns (grass, dirt, stone) - Crisp black outlines for definition Y-Layer Stacking System: - GRASS_FULL: All green (elevation > 0.7) - GRASS_TOP: Green top + brown sides (elevation 0.4-0.7) - DIRT: All brown (elevation < 0.4) - Dynamic terrain depth based on height Floating Island World Edge: - Stone cliff walls at map borders - 2-tile transition zone - Elevation flattening for cliff drop-off effect - 100x100 world with defined boundaries Performance & Polish: - Canvas renderer for pixel-perfect sharpness - CSS image-rendering: crisp-edges - willReadFrequently optimization - No Canvas2D warnings Technical: - 3D volumetric trees and rocks - Hybrid rendering (2.5D terrain + 2D characters) - Procedural texture generation - Y-layer aware terrain type selection
122 lines
2.9 KiB
Markdown
122 lines
2.9 KiB
Markdown
# FAZA 3: NPC-ji in Dekoracije - Checklist
|
|
|
|
**Status:** ✅ PRIPRAVLJEN ZA TESTIRANJE
|
|
|
|
**Datum:** 2025-12-06
|
|
|
|
---
|
|
|
|
## ✅ Opravila (Developer)
|
|
|
|
- [x] Kreacija NPC entitete (NPC.js)
|
|
- [x] Dodajanje 3 NPC-jev v sceno
|
|
- [x] Random Walk AI za NPC-je
|
|
- [x] Kreacija sprite-ov za dekoracije (rože, grmičevje)
|
|
- [x] Generacija dekoracij na terenu (TerrainSystem.js)
|
|
- [x] Parallax oblaki (GameScene.js)
|
|
- [x] Depth sorting za dekoracije (igralec gre ZA grmom, ČEZ rožo)
|
|
- [x] Posodobitev UI (naslov)
|
|
|
|
**VSE OPRAVILA ZAKLJUČENA** ✅
|
|
|
|
---
|
|
|
|
## 🧪 Ročno testiranje (Naročnik)
|
|
|
|
### Test 1: NPC-ji
|
|
**Ukaz:** `npm start` -> Opazuj mapo
|
|
|
|
**Pričakovani rezultat:**
|
|
- [ ] Na mapi so vidni 3 NPC-ji (Zombie, Villager, Merchant)
|
|
- [ ] NPC-ji so različnih barv
|
|
- [ ] NPC-ji se premikajo samostojno (Random Walk)
|
|
- [ ] NPC-ji se ustavijo za trenutek, nato zamenjajo smer
|
|
- [ ] NPC-ji ne gredo skozi robove mape
|
|
|
|
**Status:** ⏳ ČAKA NA TESTIRANJE
|
|
|
|
---
|
|
|
|
### Test 2: Dekoracije (Rože in Grmi)
|
|
**Ukaz:** Razišči mapo
|
|
|
|
**Pričakovani rezultat:**
|
|
- [ ] Na travi so vidne rdeče rože (majhen sprite 16x16)
|
|
- [ ] Na travi in zemlji so vidni zeleni grmi (večji sprite 32x32)
|
|
- [ ] Dekoracije se ne pojavijo na vodi ali kamnu (ali zelo redko)
|
|
- [ ] Dekoracij ni preveč (primeren spawn rate)
|
|
|
|
**Status:** ⏳ ČAKA NA TESTIRANJE
|
|
|
|
---
|
|
|
|
### Test 3: Depth Sorting (Prekrivanje)
|
|
**Ukaz:** Hodi z igralcem okoli dekoracij in NPC-jev
|
|
|
|
**Pričakovani rezultat:**
|
|
- [ ] Ko gre igralec "nad" rožo (severno), jo pokrije (hodi po njej)
|
|
- [ ] Ko gre igralec "pod" rožo (južno), jo pokrije (roža je ravna)
|
|
- [ ] Ko gre igralec "nad" grmom (severno), je igralec ZA grmom (skrit)
|
|
- [ ] Ko gre igralec "pod" grmom (južno), je igralec PRED grmom
|
|
- [ ] Enako velja za NPC-je (pravilno prekrivanje)
|
|
|
|
**Status:** ⏳ ČAKA NA TESTIRANJE
|
|
|
|
---
|
|
|
|
### Test 4: Parallax Oblaki
|
|
**Ukaz:** Opazuj ozadje
|
|
|
|
**Pričakovani rezultat:**
|
|
- [ ] Čez zaslon se premikajo beli oblaki
|
|
- [ ] Oblaki so prosojni
|
|
- [ ] Oblaki se premikajo počasneje/hitreje kot kamera (parallax)?
|
|
- [ ] Ko premikaš igralca (kamero), oblaki ostajajo bolj "pri miru" kot teren (ali se premikajo z drugačno hitrostjo)
|
|
|
|
**Status:** ⏳ ČAKA NA TESTIRANJE
|
|
|
|
---
|
|
|
|
### Test 5: Performance
|
|
**Ukaz:** Opazuj FPS
|
|
|
|
**Pričakovani rezultat:**
|
|
- [ ] Dodatek NPC-jev, dekoracij in oblakov ne zniža FPS pod 55
|
|
- [ ] Igra teče gladko
|
|
|
|
**Status:** ⏳ ČAKA NA TESTIRANJE
|
|
|
|
---
|
|
|
|
## 📋 Potrditev Naročnika
|
|
|
|
```
|
|
FAZA 3: [STATUS]
|
|
- Testirano: [DA/NE]
|
|
- Datum testiranja: ___________
|
|
- Opombe:
|
|
|
|
|
|
|
|
|
|
- Test 1: [✅/❌]
|
|
- Test 2: [✅/❌]
|
|
- Test 3: [✅/❌]
|
|
- Test 4: [✅/❌]
|
|
- Test 5: [✅/❌]
|
|
|
|
ODOBRENO ZA FAZO 4: [DA/NE]
|
|
|
|
Podpis naročnika: _____________
|
|
```
|
|
|
|
---
|
|
|
|
## ➡️ Naslednji koraki (po odobritvi)
|
|
|
|
Ko naročnik potrdi FAZO 3, se začne:
|
|
**FAZA 4: Optimizacija in Performance**
|
|
- Culling (ne renderaj nevidnih tile-ov) -> To bo pomembno za večje mape!
|
|
- Object Pooling
|
|
- Memory leak checks
|