Finalize session: Fix Tiled map loading (JSON), restore Main Menu, save assets

This commit is contained in:
2025-12-27 02:20:46 +01:00
parent 41fc635f3a
commit 875eb0516a
5 changed files with 59 additions and 45 deletions

45
SESSION_LOG_2025_12_27.md Normal file
View File

@@ -0,0 +1,45 @@
# Dnevnik Seje - 27. December 2025 (Zgodaj Zjutraj)
## 📌 Glavni Dosežki
Danes smo uspešno integrirali AI glasovni sistem (VibeVoice) v igro "Dolina Smrti" in pripravili teren za lasten level-design.
### 1. VibeVoice (AI Glasovi)
* **Integriran TTS Sistem:** Uspešno smo zagnali Microsoft VibeVoice na tvojem Macu (Apple Silicon/MPS).
* **Batch Generator:** Ustvarili smo skripto `generate_game_dialogue.py`, ki:
* Prebere dialoge iz JSON datoteke (`prologue.json`).
* Generira `.wav` datoteke za vsak stavek.
* **NOVO:** Ima "Resume" funkcijo (preskoči že narejene) in interaktivni način ("Povozi? y/N").
* **Prologue Integracija:** Igra zdaj bere dialoge iz JSON-a in predvaja generirane zvoke (Narrator, Ana, Kai) sinhronizirano s tekstom.
### 2. Tiled Map Editor
* **Reset Mape:** Resetirali smo `NovaFarma.tmx` na čisto 8x8 mapo (32x32 tiles).
* **Tiled Test Mode:** Konfigurirali smo igro, da se zažene direktno v `TiledTestScene`, da lahko hitro vidiš svoje spremembe.
* **Blue Screen Fix:** Rešili smo težavo z modrim ekranom z ustvarjanjem (placeholder) `NovaFarma.json` datoteke, ki jo Phaser potrebuje za zagon.
### 3. Git & Organizacija
* Vsi koraki so shranjeni v verzioniranje (git commit).
* Projekt je čist in pripravljen za naslednjo fazo: **Risanje tvoje kmetije!**
## 🛠️ Navodila za Delo
### Kako Generirati Zvoke?
1. Uredi tekst v `assets/dialogue/prologue.json`.
2. Poženi skripto:
```bash
cd ai_voice_gen/VibeVoice_Apple/VibeVoice
python generate_game_dialogue.py --json_file ../../../assets/dialogue/prologue.json --output_dir ../../../assets/audio/voiceover/prologue
```
3. Če datoteka že obstaja, te vpraša: "Regenerate? (y/N)".
### Kako Urejati Mapo?
1. Odpri `assets/maps/NovaFarma.tmx` v **Tiledu**.
2. Riši s tileseti (Ground, Obstacles, Buildings...).
3. **POMEMBNO:** Vedno naredi **File > Export As... > JSON** (`NovaFarma.json`), da se spremembe vidijo v igri!
### Kaj Naprej?
* Nariši svojo sanjsko kmetijo v Tiledu.
* Dodaj dialoge za druge scene (npr. srečanje z zombijem).
* Testiraj igro!
---
*Zapisal: Antigravity AI, 27.12.2025 ob 02:12*

View File

@@ -81,7 +81,7 @@
"y": 0
}
],
"nextlayerid": 4,
"nextlayerid": 2,
"nextobjectid": 1,
"orientation": "orthogonal",
"renderorder": "right-down",
@@ -89,49 +89,17 @@
"tileheight": 32,
"tilesets": [
{
"columns": 16,
"firstgid": 1,
"source": "01_Ground.tsx",
"image": "../narezano_in_majhno/krvava_zetev_sprites/grass_soil_tileset_1766171156780_obdelan.png",
"imageheight": 512,
"imagewidth": 512,
"margin": 0,
"name": "01_Ground",
"tilewidth": 32,
"spacing": 0,
"tilecount": 256,
"tileheight": 32,
"imageheight": 512,
"imagewidth": 512
},
{
"firstgid": 300,
"source": "02_Obstacles.tsx",
"name": "02_Obstacles",
"tilewidth": 32,
"tileheight": 32,
"imageheight": 512,
"imagewidth": 512
},
{
"firstgid": 600,
"source": "04_Buildings.tsx",
"name": "04_Buildings",
"tilewidth": 32,
"tileheight": 32,
"imageheight": 512,
"imagewidth": 512
},
{
"firstgid": 900,
"source": "03_Fences.tsx",
"name": "03_Fences",
"tilewidth": 32,
"tileheight": 32,
"imageheight": 512,
"imagewidth": 512
},
{
"firstgid": 1200,
"source": "05_Tools_Items.tsx",
"name": "05_Tools_Items",
"tilewidth": 32,
"tileheight": 32,
"imageheight": 512,
"imagewidth": 512
"tilewidth": 32
}
],
"tilewidth": 32,

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<tileset version="1.10" tiledversion="1.11.2" name="ground_tiles" tilewidth="32" tileheight="32" tilecount="64" columns="8">
<tileset version="1.11" tiledversion="1.11.2" name="ground_tiles" tilewidth="32" tileheight="32" tilecount="64" columns="8">
<image source="../ground_tiles.png" width="256" height="256"/>
</tileset>

View File

@@ -35,5 +35,6 @@
"project": "novafarma.tiled-project",
"recentFiles": [
"assets/maps/NovaFarma.tmx"
]
],
"tileset.lastUsedFormat": "tsx"
}

View File

@@ -778,8 +778,8 @@ class PreloadScene extends Phaser.Scene {
// ✅ Starting main menu (StoryScene)
this.time.delayedCall(500, () => {
console.log('🎮 Starting TiledTestScene (NovaFarma Test)...');
this.scene.start('TiledTestScene'); // ← Direct jump to Tiled Test
console.log('🎮 Starting StoryScene (Main Menu)...');
this.scene.start('StoryScene'); // ← MAIN MENU
});
}