Un'applicazione Python avanzata che utilizza l'intelligenza artificiale Google Gemini per generare, gestire ed esportare personaggi completi per Dungeons & Dragons (5ª Edizione).
Esempio di tre personaggi generati con statistiche visive e dettagli narrativi.
- Generazione Intelligente: Crea personaggi bilanciati partendo da semplici descrizioni testuali (es. "Un bardo elfo che ama il vino").
- Statistiche Dinamiche: Assegnazione automatica delle statistiche basata sulla classe e visualizzazione con barre grafiche nel terminale.
- Database Persistente: Salvataggio automatico in un file
db.jsonper non perdere mai i tuoi eroi. - Editing Potenziato dall'IA: Modifica i personaggi esistenti o chiedi all'IA di rigenerare solo la backstory se non ti convince.
- Esportazione in Batch: Salva le schede in formato
.txtin una cartella dedicata (export_schede/), singolarmente o tutte insieme. - Gestione CRUD: Crea, Leggi, Aggiorna e Cancella i tuoi personaggi con comandi semplici.
Il progetto è diviso in moduli per una facile manutenzione:
main.py: L'interfaccia utente e la logica del menu.generator.py: Configurazione di Gemini e logica di generazione/rigenerazione.storage.py: Gestione del file JSON e delle esportazioni su disco..env: Archiviazione sicura della tua API Key.db.json: Il tuo archivio personaggi.export_schede/: Cartella generata automaticamente che contiene le schede esportate.
- Requisiti: Assicurati di avere Python 3.9+ installato.
- Dipendenze: Installa le librerie necessarie:
pip install google-generativeai python-dotenv
- API Key: Ottieni una chiave API gratuita da Google AI Studio.
- File .env: Crea un file
.envnella cartella principale e aggiungi la tua chiave:GOOGLE_API_KEY="INSERISCI_QUI_LA_TUA_CHIAVE"
Avvia l'applicazione:
python main.pyUna volta visualizzata la lista dei personaggi, puoi digitare:
| Comando | Azione |
|---|---|
[Numero] |
Visualizza dettagli, statistiche grafiche e backstory. |
edit [N] |
Modifica manuale o rigenerazione IA della storia. |
exp [N] |
Esporta la scheda specifica in export_schede/. |
exp all |
Esporta tutti i personaggi in file .txt separati. |
del [N] |
Elimina definitivamente il personaggio dal database. |
- Encoding: Utilizza UTF-8 per garantire che tutti i testi in italiano e i simboli grafici siano visualizzati correttamente su ogni sistema operativo.
- Modello IA: Configurato per gemini-2.5-flash