Paramètres campagne

Lien joueur, mot de passe, invitations, image d'attente, suppression.
8 étapes pour configurer ta campagne aux petits oignons.

Étape 1

Page Paramètres campagne

Accès via le bouton Paramètres (icône engrenage) en haut à droite d'une campagne. Réservé au MJ propriétaire.

5 sections :

  • Identité : nom, slug d'accès joueur.
  • Sécurité joueur : mot de passe, invitations email.
  • Image d'attente : visuel quand aucune carte projetée.
  • Export / Import : sauvegarde JSON de la campagne (premium).
  • Zone danger : suppression définitive.
Étape 2

Renommer la campagne

Champ Nom de la campagne :

  • Modifie à tout moment.
  • Sauvegarde explicite via bouton (pas d'auto-save sur ce champ critique).
  • Visible dans le header de la campagne et le dashboard MJ.
Exemple
De « Test1 » à « L'Ombre du Sanctuaire Oublié ». Bénéficie d'avoir un nom évocateur pour t'y retrouver entre plusieurs campagnes.
Étape 3

Lien d'accès joueur

Chaque campagne a une URL unique pour les joueurs : https://…/c/<slug>.

  • Slug : généré auto à la création (12 caractères aléatoires).
  • Bouton Copier : copie l'URL complète dans le presse-papier.
  • Régénérer slug : génère un nouveau slug (l'ancien devient invalide). Premium uniquement. Idéal si lien fuite ou pour fin de campagne.
  • Raccourci header : bouton « Lien joueurs » à côté du logo copie directement sans passer par Paramètres.
Pas de modification slug directe
Tu ne peux pas choisir un slug custom (« macampagne »). Anti-squatting de URLs courtes + collision potentielle. Si tu régénères, ancien slug invalide immédiatement.
Test côté joueur
Avant la séance 1, ouvre le lien dans une fenêtre privée pour valider que tout fonctionne et que les joueurs voient ce que tu attends.
Étape 4

Mot de passe joueur

Optionnel mais recommandé pour les campagnes sérieuses :

  • Champ Mot de passe : 4 caractères minimum.
  • Sauvegarde via bouton.
  • Les joueurs verront un écran de saisie avant d'accéder à la campagne.
  • Le mot de passe est hashé bcrypt en DB (jamais en clair).
  • Modifier le mot de passe invalide les sessions joueur en cours (ils devront re-saisir).
Quand l'utiliser
Si ta campagne est publique ou partagée (Discord, Reddit), ajoute un mot de passe pour empêcher les random d'entrer. Si privée entre amis avec lien partagé en DM, optionnel.
Étape 5

Invitations email

Premium uniquement. Section Invitations :

  • Email destinataire + message custom optionnel.
  • Bouton Envoyer → mail via Resend avec lien + mot de passe (si défini).
  • Liste des invitations envoyées avec date et statut (envoyée, ouverte si tracking).
  • Rate limit : 10 invitations / jour / campagne (anti-spam).
Format mail
Mail HTML stylé avec ta campagne + nom MJ + CTA bouton vers la campagne. Mot de passe affiché en clair dans le mail (chiffré in-transit via TLS).
Étape 6

Image d'attente

Premium uniquement. Image affichée aux joueurs quand aucune carte n'est projetée :

  • Upload PNG / JPG / WebP, max 5 Mo.
  • Stocké sur FS via STORAGE_DIR/waiting-images/{campaignId}.
  • Affichage plein écran responsive avec overlay logo discret.
  • Remplaçable à tout moment (efface l'ancienne).
  • Sans image : fallback logo Freyja Forge par défaut.
Idées d'image
Couverture de campagne (Midjourney), logo custom, scène d'ambiance évocatrice, plan d'une ville en aperçu. Format paysage 1920×1080 idéal.
Animation séance
Affiche une image d'attente pendant les pauses (toilettes, snack). Crée l'ambiance avant le début de la séance plutôt qu'un écran noir.
Étape 7

Export / Import (premium)

Section Export :

  • Export JSON : télécharge l'intégralité des données de la campagne (PJ, monstres, cartes, lore, sessions, encounters, custom spells) en un fichier campaign-export-{date}.json.
  • Inclut les méta (nom, date création, owner_id).
  • Pas les images (FS séparé) à exporter manuellement si besoin.
  • RGPD : ton droit à la portabilité des données.
Import non encore exposé
L'export JSON est fonctionnel mais l'import depuis JSON dans une autre installation n'est pas encore exposé dans l'UI publique. Roadmap : import / clonage de campagne entre comptes.
Étape 8

Suppression de la campagne

Bouton Supprimer la campagne dans la zone danger en bas :

  1. Modale de confirmation (1ère étape) rappelant tout ce qui sera perdu.
  2. Prompt qui demande de retaper le nom exact (2ème étape, anti-erreur).
  3. Confirmation finale.
  4. Soft-delete immédiat : campagne retirée du dashboard, données conservées 30 jours en DB (récupérable via support).
  5. Après 30 jours : hard-delete (purge DB, FS, RGPD).
Tout est perdu
Suppression d'une campagne supprime : PJ, monstres, cartes (DB + FS), sessions, lore entities, encounters, custom spells, chat, sounds, atlas, pins, tout. Les joueurs sont déconnectés instantanément. Le slug est libéré.
Avant de supprimer
- Exporte la campagne en JSON (sauvegarde).
- Préviens tes joueurs.
- Vérifie que tu ne confonds pas avec une autre campagne (le prompt nom exact aide).

Campagne configurée, joueurs prêts à entrer.

Pour les rejoindre, partage le lien copié. Pour démarrer une rencontre, va voir le guide combat.

Retour au hub