Files
novafarma/dev_plan.md

4.4 KiB

Začnemo nov projekt

  • Ne uporabi znanja iz prejšnjih projektov
  • Ustvari opravila (tasks)
  • Ustvari lokalni git za uporabnika hipodevil666@gmail.com

Tehnologija

  • Uporabi Node.js (verzija 18+)
  • Uporabi Phaser.io (verzija 3.60+)
  • Za gradnjo igre za PC uporabi Electron.js (verzija 27+)

Tehnične zahteve

  • Resolucija okna: 1280x720
  • Velikost sprite-a igralca: 32x32px
  • Velikost kocke terena: 48x48px (isometric)
  • Git repository: local

Igra

  • Igra bo igra preživetja (survival game)
  • Igra bo 2.5D isometrični pogled mape, ki je videti 3D
  • Igralec in NPC-ji so 2D pixel art
  • Slog igre je pixelart

FAZA 0: Projektni Setup

Status: V teku

Opravila:

  • Inicializacija npm projekta
  • Setup Git repository
  • Kreiranje strukture map (src/, assets/, dist/)
  • Instalacija odvisnosti (Phaser, Electron)
  • Osnovna konfiguracija Electron + Phaser
  • Test run: prazno črno okno

Testiranje (ročno):

Naročnik potrdi: Electron okno se odpre in prikaže prazno Phaser sceno


FAZA 1: Generacija Terena

Status: ⏸️ Čaka

Opravila:

  • Implementacija proceduralnega generatorja terena (Perlin noise)
  • Definicija osnovnih tipov terena (trava, zemlja, kamen)
  • Testiranje na zemljevidu velikosti 100x100 kock 2.5D
  • Implementacija isometričnega pogleda
  • Osnovna kamera kontrola (zoom, pan)

Tehnične specifikacije:

  • Velikost mape: 100x100 kock
  • Tip generacije: Perlin noise
  • Tipi terena: grass, dirt, stone
  • Isometric tile: 48x48px

Testiranje (ročno):

Naročnik potrdi: Teren se generira, isometric view je pravilen, kamera deluje


FAZA 2: Igralec in Gibanje

Status: ⏸️ Čaka

Opravila:

  • Dodaj igralca (2D pixel art sprite 32x32px)
  • Implementacija WASD gibanja
  • Depth sorting (z-index za isometric view)
  • Testiranje kolizije z robovi mape
  • Dodaj barvno shemo za teren (gradient, variacije)
  • Dodaj barvno shemo za igralca

Tehnične specifikacije:

  • Hitrost gibanja: 150 px/s
  • Kontrole: WASD
  • Sprite: 32x32px pixel art
  • Depth sorting: po Y koordinati

Testiranje (ročno):

Naročnik potrdi: Igralec se giblje, depth sorting deluje, kolizije pravilne


FAZA 3: NPC-ji in Dekoracije

Status: ⏸️ Čaka

Opravila:

  • Dodaj NPC-je (3 na velikost 100x100)
  • Implementacija AI gibanja (random walk)
  • Dodaj okrasne elemente: rože, grmičevje
  • Dodaj parallax okrasne elemente: oblaki, ptice
  • Variacije okrasnih elementov (različne barve, velikosti)

Tehnične specifikacije:

  • Število NPC: 3 na 100x100 mapo
  • AI: Random walk z pauzami
  • Okrasni elementi: 5-10 različnih variant
  • Parallax hitrost: 0.3x (oblaki), 0.5x (ptice)

Testiranje (ročno):

Naročnik potrdi: NPC-ji se gibljejo, dekoracije prisotne, parallax učinek deluje


FAZA 4: Optimizacija in Performance

Status: ⏸️ Čaka

Opravila:

  • Culling: renderiranje samo vidnih tiles
  • Object pooling za sprite-e
  • FPS monitor
  • Performance testing (60 FPS minimum)
  • Memory leak check

Testiranje (ročno):

Naročnik potrdi: Igra teče pri 60 FPS, brez memory leakov


FAZA 5: UI Elementi

Status: ⏸️ Čaka

Opravila:

  • Zdravje (HP bar)
  • Lakota/žeja merila
  • Mini mapa
  • Inventar (osnovni)

Testiranje (ročno):

Naročnik potrdi: UI elementi so vidni in funkcionalni


FAZA 6: Save/Load Sistem

Status: ⏸️ Čaka

Opravila:

  • Serializacija stanja igre
  • Shranjevanje v localStorage/file
  • Nalaganje shranjenega stanja
  • Auto-save funkcionalnost

Testiranje (ročno):

Naročnik potrdi: Save/Load deluje, stanje se ohranja


FAZA 7: Survival Mehanike

Status: ⏸️ Čaka

Opravila:

  • Dan/noč cikel
  • Sistem lakote in žeje
  • Zbiranje virov
  • Crafting osnove

Testiranje (ročno):

Naročnik potrdi: Survival mehanike delujejo


FAZA 8: Electron Build

Status: ⏸️ Čaka

Opravila:

  • Electron packaging
  • Windows .exe build
  • Ikone in metadata
  • Installer kreacija

Testiranje (ročno):

Naročnik potrdi: .exe se zažene samostojno, installer deluje


Navodila za testiranje

Vsaka faza zahteva ročno potrditev naročnika pred prehodom na naslednjo fazo.

Format potrditve:

FAZA [N]: [STATUS]
- Testirano: [DA/NE]
- Opombe: [opombe naročnika]
- Odobreno: [DA/NE]