# Reconstrucción de Maravillas — Faro de Alejandría POC

> Reconstrucción 5 niveles del Faro como POC. Aplicación Megagrants $70K incluye las 7 maravillas progresivamente. ~12h trabajo level designer para Faro completo.

## 0 · Pre-requisitos

- [ ] UEFN 35.0+ con cuenta Epic
- [ ] Proyecto vacío: `wonders-faro-startidea`
- [ ] Backend: `curl https://api-wonders.hubstartidea.es/health` → `{"status":"ok"}`
- [ ] Asesoría académica firmada (Dept. Historia Antigua UGR) — `_operations/letters/`

---

## 1 · Verse import (30 min)

```
Content/wonders/
  ├── wonders.verse                 (entry point)
  ├── wonder_construction.verse     (lógica de socket-based building)
  ├── cataclysm_event.verse         (evento final destrucción)
  └── modules/
       ├── wonder_director.verse    (orquesta progreso piezas)
       ├── piece_validator.verse    (verifica pieza correcta en socket)
       ├── cataclysm_engine.verse   (timeline destrucción)
       ├── narration_player.verse   (audio guion académico)
       └── tour_guide.verse         (modo tour autopilot)
```

Build + tests (`wonder_director_test` + `cataclysm_test` → 10 tests).

---

## 2 · Construir Muelle + Isla Faros base (60 min)

Filtrar `level-blueprint.csv` por `zone=Muelle` y `zone=Faro`:

- Spawn muelle + Capitán Ptolomeo NPC
- Plataforma rocosa octogonal 24m diámetro (Faro Base)
- Wonder Director y Piece Validator devices (Verse)

**Wiring inicial**:
- `faro_director.OnInit` → `wonder_director.verse:start_level(1)`
- `faro_validator` escucha eventos de placement

---

## 3 · Sistema socket-based (90 min)

Cada socket es un punto donde se "coloca" una pieza específica. La pieza spawneada en cantera tiene un `socket_id` y un `level_required`.

**Verse `piece_validator.verse`** ya implementa:
- `OnPlayerDropsPiece(piece, socket)`:
  - Si `piece.socket_id == socket.id` → snap, lock, score+
  - Si NO → bounce back, "Pieza incorrecta" feedback
- Cada nivel completo (todos sockets ocupados) → `OnLevelComplete(level_id)`

**Editor work**:
- Para cada socket en CSV (8+7+8+5+3 = 31 sockets total), crear un `Socket Marker` con tag matching `n1_socket_1`, etc.
- Los `Item Spawner` (canteras) generan items con el mismo tag system

---

## 4 · Construir los 5 niveles (5 × 60 min)

### N1 — Cimiento (8 piezas, base cuadrada)
- 8 sockets en grid 3×3 (sin centro) Z=50
- Cantera N1 spawnea 8 piezas (más extras para "fallar")

### N2 — Cuerpo cuadrangular (7 piezas, primer cuerpo)
- 7 sockets en columna ascendente Z=500..1500
- Mat: mármol blanco

### N3 — Cuerpo octogonal (8 piezas, transición)
- 8 sockets en octógono Z=1800
- Rotaciones específicas (yaw 0/45/90/135/180/-135/-90/-45)

### N4 — Cilindro (4 piezas, cuerpo final)
- Cilindro pre-construido + 4 sockets para puerta/ventanas/polea
- Polea es interactiva (sube combustible al brasero superior)

### N5 — Cúpula + Fuego (3 piezas finales)
- Brasero + Espejo + Estatua Poseidón
- Al completar: VFX fuego eterno + haz luz rotatorio + cinemática (`cataclysm_engine.verse`)

---

## 5 · Zonas de narración académica (45 min)

3 zonas con audio guion + texto en pantalla. Cada `narracion_X` device usa Verse `narration_player.verse`:

| Zona | Tema | Duración | Fuente académica |
|------|------|----------|------------------|
| narracion_n1_construccion | "Sostratos de Cnido construye, 280 a.C." | 60s | Estrabón, Geografía XVII.1.6 |
| narracion_n2_vida | "Vida cotidiana del faro" | 120s | Lucano, Farsalia VIII |
| narracion_n3_destruccion | "Terremoto 1303 destruye" | 90s | Crónicas árabes Ibn Battuta |

Audio narrado por voz profesional (1 sesión estudio, ~$300). Texto subtítulos español + inglés + árabe.

---

## 6 · Tour guiado (autopilot mode) (30 min)

Modo opcional para visitantes que no quieren construir. Botón en muelle activa `tour_guide.verse:start_auto_tour()`:

- Cámara se mueve waypoint a waypoint (5 stops, 90s cada uno)
- Narrador habla durante cada stop
- Subtítulos sincronizados
- Al final, devuelve al jugador al muelle

Implementación: `Marker Device` (waypoint_1..5) + `Camera Sequence` en Verse.

---

## 7 · Evento Cataclysm (final) (30 min)

Al colocar la última pieza (N5_complete_trigger):
1. Pausa de 3s, cámara cinematográfica
2. Narración final empieza ("13 marzo 1303...")
3. `cataclysm_quake_vfx` se activa, todo el faro tiembla
4. Animación: piezas N5 caen, luego N4, N3, etc. (10s)
5. Faro reducido a escombros — fundamento histórico
6. Texto: "Reconstrúyelo otra vez" + portal a reiniciar nivel

Implementado en `cataclysm_engine.verse`. Tests verifican secuencia.

---

## 8 · Assets externos

### 3D Models (los más críticos)
| Asset | Origen sugerido | Coste |
|-------|-----------------|-------|
| `Faro_Base_Octagonal_Mesh` | Modelar custom (12h Blender) | ~$480 |
| `Piedra_Caliza_Block` (N1 piezas) | Marketplace "Ancient Stone Pack" | $15 |
| `Marmol_Block` (N2 piezas) | Mismo pack | — |
| `Cilindro_Faro` (N4 cuerpo) | Modelar custom (8h) | ~$320 |
| `Cupula_Octogonal` (N5) | Modelar custom (6h) | ~$240 |
| `Brasero_Mesh` + `Espejo_Bronce` + `Estatua_Poseidon` | UE Marketplace "Ancient Greek Statues" | $20 |
| `Barco_Egipcio` (muelle) | Marketplace | $10 |
| `Capitan_Ptolomeo_NPC` | Custom skin Fortnite + outfit | $80 |

**Total 3D**: ~$1,165.

### Audio
- 3 narraciones × 60-120s × $100/min sesión voz = ~$600
- 5 narraciones tour × 90s = ~$450
- VFX cataclysm + ambient muelle/mar/faro = ~$200

**Total audio**: ~$1,250.

### Asesoría académica
- UGR Historia Antigua: validar guiones, fuentes, dimensiones
- ~$800 (carta + 2 reuniones)

---

## 9 · Tests críticos antes Megagrants

- [ ] 31 sockets reconocen pieza correcta
- [ ] 5 niveles se completan en orden
- [ ] Cataclysm se dispara al final
- [ ] Tour guiado funciona end-to-end (90s × 5 = 7.5 min)
- [ ] 3 narraciones reproducen audio + texto sincronizado
- [ ] Reset del faro tras Cataclysm funciona
- [ ] Mapa publica sin errores Verse
- [ ] 4+ jugadores simultáneos no degrada performance

---

## 10 · Roadmap post-POC (Faro completo)

Megagrants $70K solicitados cubren las **7 maravillas** desplegadas progresivamente:

| Maravilla | Mes objetivo | Coste estimado |
|-----------|--------------|----------------|
| 1. Faro de Alejandría (POC) | Junio 2026 | $10K |
| 2. Coloso de Rodas | Septiembre 2026 | $12K |
| 3. Templo de Artemisa | Diciembre 2026 | $10K |
| 4. Mausoleo de Halicarnaso | Marzo 2027 | $10K |
| 5. Estatua de Zeus en Olimpia | Junio 2027 | $10K |
| 6. Jardines Colgantes Babilonia | Septiembre 2027 | $12K |
| 7. Pirámide de Guiza | Diciembre 2027 | $6K (la más documentada, menos custom) |

Cada una usa la misma arquitectura Verse (socket-based) con assets distintos.
