main
Vermine 2047 — Système Foundry VTT
Système non-officiel pour le jeu de rôle Vermine 2047, univers post-apo français par Studio Agate.
► Achetez le jeu : https://www.kickandgo.net/boutique-agate/category.php?cl=UyQcRrFtYcYrAnLbOfDj&idp=20
Interface bilingue FR/EN.
Types d'Acteurs
| Type | Fiche | Description |
|---|---|---|
| character | AppV2 | Personnage joueur — compétences, capacités, totem, équipement |
| npc | AppV2 | PNJ avec rôle/menace, seuils de blessure |
| group | AppV2 | Groupe avec membres, rencontres, synchro liée |
| creature | AppV2 | Créature avec gabarit/taille/rôle, attaques custom |
Types d'Objets
| Type | Utilisation |
|---|---|
| item | Objets génériques (matériel, ressources) |
| weapon | Armes — dégâts, portée, fiabilité, rareté |
| defense | Armures/boucliers — protection, couverture |
| vehicle | Véhicules — vitesse, structure, armement |
| ability | Capacités spéciales (apprentissage, domaine) |
| specialty | Spécialités de compétence |
| background | Historiques de personnage |
| trauma | Traumatismes physiques/mentaux |
| evolution | Évolutions du personnage |
| rumor | Rumeurs (groupe) |
| target | Cibles (groupe) |
| rite | Rites (magie/rituels) |
Système de Dés
- Comptage de succès sur d10 :
Xd10cs>=N - Difficulté = nombre de succès requis
- Les totems donnent des bonus de domaine (dés humains/adaptés)
- Relances via l'Effort et le Sang-froid
- Succès automatiques et seuils d'échec
- Intégration Dice So Nice! avec faces de d10 personnalisées
Initiative
Formule : (@abilities.reflexes.value + @skills.alertness.value)d10cs>=@combatStatus.difficulty
Architecture
module/
├── vermine2047.mjs # Point d'entrée (Hooks.once init)
├── models/ # DataModels (Foundry v2 TypeDataModel)
│ ├── actor/ # character.mjs, npc.mjs, group.mjs, creature.mjs
│ └── item/ # Les 12 types d'objets
├── documents/ # VermineActor, VermineItem
├── applications/
│ └── sheets/ # Fiches AppV2 par type
├── system/
│ ├── config.mjs # CONFIG.VERMINE (totems, traits, compétences…)
│ ├── roll.mjs # VermineUtils.roll()
│ ├── fight.mjs # Système de combat, VermineCombat, VermineCombatant
│ ├── functions.mjs # Fonctions partagées
│ ├── hooks.mjs # Hooks (DiceSoNice, chat, pause…)
│ ├── dice3d.mjs # Couleurs Dice So Nice, initUserDice
│ ├── dialogs/rollDialog.mjs
│ ├── settings.mjs # Paramètres du système (mode de jeu…)
│ ├── tour.mjs # Visites guidées (stub)
│ └── group-link.mjs # GroupLink : synchro acteurs↔groupes
templates/
├── actor/appv2/ # Templates AppV2 des fiches acteurs
├── actor/ # Templates legacy (coexistence)
└── item/ # Templates des fiches objets
css/
└── vermine2047.min.css # Compilé depuis LESS
less/
└── base.less # Source LESS principale
Objets Clés
game.vermine2047→{ VermineUtils, VermineCombat, GroupLink }CONFIG.VERMINE→ totems, traits, compétences, domaines, états de combat…CONFIG.ui.combat→VermineCombatTrackerpersonnalisé
Commandes
npm run build:less # LESS → css/vermine2047.min.css
npm run build:less:dev # LESS → css/vermine2047.dev.css (non minifié)
npm run build:all-css # Les deux
npm run watch # Gulp watch + browser-sync → localhost:30000
npm run lint:less # Vérification LESS
npm run pushLDBtoYAML # Extraire les packs → src/packs/*.yml
npm run pullYAMLtoLDB # Compiler les packs → packs/* (LevelDB)
make build|watch|lint # Raccourcis Makefile
Prérequis
- Node.js
v16.15.1(cf.nvmrc) - Foundry VTT v14
Notes de Développement
- DataModels avant Document classes : Dans le hook
init, enregistrerCONFIG.Actor.dataModels.*etCONFIG.Item.dataModels.*avant de définirCONFIG.Actor.documentClass/CONFIG.Item.documentClass. - Deux systèmes de templates : AppV2 (
templates/actor/appv2/) et legacy (templates/actor/*.hbs) coexistent. - Packs : Éditer les sources YAML dans
src/packs/*.yml, puis lancerpullYAMLtoLDB. - CSS : Déclaré dans
system.json— ne pas injecter de<link>manuellement. - ESLint : ~350 règles. Lancer
npx eslint module/avant chaque commit. Pas deconsole.log. - editMode : Ne se met plus automatiquement à la création d'acteur (cause des erreurs ActiveEffect). Activer manuellement via la case à cocher.
- GroupLink : Synchronisation automatique bidirectionnelle acteurs↔groupes.
- HotReload : Activé pour css, scss, hbs, json dans
system.json.
English Summary
Vermine 2047 is a French post-apocalyptic TTRPG. This is an unofficial Foundry VTT system (v14).
- 4 actor types: character, npc, group, creature
- 12 item types: item, weapon, defense, vehicle, ability, specialty, background, trauma, evolution, rumor, target, rite
- Dice: d10 success-counting with totem domains, Effort rerolls, Dice So Nice! 3D integration
- Sheets: AppV2 with tab navigation, edit/play mode toggle
- Bilingual: FR/EN interface
Licence
Projet fan non-officiel. L'univers et les marques Vermine 2047 appartiennent aux Éditions John Doe.
Description