66 lines
4.6 KiB
Markdown
66 lines
4.6 KiB
Markdown
# 15. Modules optionnels livrés à part (V1.4)
|
|
|
|
Demande utilisateur (2026-10-02) : ne garder dans la build Shipping que l'essentiel, et proposer les mods optionnels
|
|
dans une archive séparée.
|
|
|
|
## 1. Répartition
|
|
|
|
| Dans la build Shipping | Dans `LifePlay_Revival_V1.4_Optional_Modules.zip` |
|
|
|---|---|
|
|
| `vin_Base` (jeu de base, ne peut pas être désactivé) | `vin_VanillaPorn`, `vin_Pregnancy`, `vin_Interracial`, `vin_OldYoung`, `vin_Polyamorous` |
|
|
| `lp_Revival` (coiffures Pocolov) | `vin_NTR` (désactivé par défaut), `vin_Netori`, `vin_BDSM`, `vin_Tentacles`, `vin_Watersports` |
|
|
| `vin_VanillaRealistic` (situations adultes « vanilla », simple interrupteur) | non officiels : `vin_Corruption`, `vin_NonConsensual`, `vin_Incest`, `vin_Bestiality` |
|
|
|
|
Liste versionnée : `Tools/modules/V1.4.json` (`essential`). Les fichiers de `Content/Modules` hors modules (`Clothes4.txt`,
|
|
`outfits_*.txt`, `names_*.txt`, `MorphTags`…) restent dans la build. Le dépôt et l'archive des sources gardent tous les
|
|
modules.
|
|
|
|
## 2. Pourquoi le jeu le supporte
|
|
|
|
- Les Blueprints ne lisent aucun fichier des modules optionnels ; ils testent seulement leur activation par identifiant
|
|
(`GI.IsModEnabled('vin_Pregnancy')`, `vin_Polyamorous`, `vin_NTR`, `vin_Interracial`, `vin_OldYoung`,
|
|
`vin_Watersports`).
|
|
- `GI.IsModEnabled` lit `GI.ModEnableds` et répond faux pour un module absent de la liste.
|
|
- Au démarrage, `GI.removeDeletedMods` relève les `Modules/*.lpmod` présents et retire de `GI.ModEnableds` les modules
|
|
absents (la liste par défaut du Blueprint déclare `vin_Pregnancy`, `vin_VanillaPorn` actifs : ils en sont retirés si
|
|
leur dossier manque).
|
|
- Seuls chemins de modules écrits en dur dans les Blueprints : `Modules/vin_Base/Bedrooms` (`Room`) et
|
|
`Modules/vin_Base/Presets/real_faces` (`MainMenu`), dans `vin_Base`, qui reste.
|
|
- Couche de données (`LPDataCache`) : un module ajouté plus tard est lu sur le disque puis mis en cache (date et taille).
|
|
|
|
## 3. Outil
|
|
|
|
```powershell
|
|
.\Tools\SplitModules.ps1 -Build D:\Game\LifePlay_Build_5.5_Shipping_V1.4 -Config Tools\modules\V1.4.json -Out D:\Game\LifePlay_Publication
|
|
```
|
|
|
|
Il vérifie la présence des modules essentiels, déplace les autres vers `<build>_modules_optionnels\LifePlay\Content\Modules`
|
|
(rien n'est supprimé), ajoute une notice `LISEZMOI_README.txt` (installation : extraire dans le dossier du jeu, celui de
|
|
`LifePlay.exe`), crée l'archive, la teste (7-Zip) et compare son contenu aux fichiers déplacés.
|
|
|
|
## 4. Installation par le joueur
|
|
|
|
Extraire l'archive dans le dossier du jeu en fusionnant le dossier `LifePlay` ; les modules apparaissent dans le
|
|
gestionnaire de mods, où ils s'activent ou se désactivent. Pour en retirer un : supprimer son dossier.
|
|
|
|
## 5. À partir de la publication suivant la V1.4 : une archive par mod (décision du 2026-10-03)
|
|
|
|
- Le build Shipping ne garde que les modules de base, en texte : `vin_Base`, `vin_VanillaRealistic`
|
|
(`Tools/modules/next.json`, `"per_module": true`).
|
|
- Chaque autre module est livré dans **son propre zip** : `<module>-for-LifePlay-<version>.zip`
|
|
(`LifePlay/Content/Modules/<module>` + `README.txt` bilingue tiré du `.lpmod` : nom, description, prérequis,
|
|
installation, désinstallation). Chaque mod d'assets (`Tools/BuildMod.ps1`, ex. `lpr_hair_pocolov`) a déjà son zip,
|
|
déposé dans le même dossier (`-Out <Publication>\Modules_<version>`).
|
|
- `INDEX.txt` (nom, archive, taille, SHA-256) sert au message de diffusion.
|
|
- **Diffusion des modules : Discord** dans un premier temps (pas d'annonce sur GitHub, comme pour le jeu).
|
|
- Garde-fou : `SplitModules.ps1` refuse un build contenant un mod d'assets installé (`LifePlay/Mods/<mod>`), dont la
|
|
partie texte serait livrée sans ses paquets ; utiliser un build neuf. Essai sur une copie des modules du build H3d :
|
|
15 archives, 640 fichiers déplacés = 640 archivés, aucun reste ; refus vérifié avec un mod d'assets installé (copies
|
|
d'essai dans `LifePlay_Backup_5.5\PUB_next`).
|
|
- **Rectification du 2026-10-03** : les modules `vin_*` optionnels (jeu d'origine de Vinfamy) forment **un seul zip**,
|
|
le paquet de base du jeu (`vin_Modules-for-LifePlay-<version>.zip`, 14 modules, notice listant chaque module et ses
|
|
prérequis) ; `vin_Base` et `vin_VanillaRealistic` restent dans le build. Les autres mods (ex. `lpr_hair_pocolov`) ont
|
|
chacun leur zip. Configuration : `"groups"` dans `Tools/modules/next.json` (`name`, `pattern`, `title`,
|
|
`description`) ; un module non couvert par un groupe a son propre zip. V1.5 : `vin_Modules` (875 911 octets, 626
|
|
fichiers) et `lpr_hair_pocolov-1.0` ; le premier découpage (un zip par module `vin_*`) est rangé dans
|
|
`LifePlay_Backup_5.5\PUB_V15\decoupage_un_zip_par_module`.
|