[Feature][ABJ-01] Porter le cœur historique d’Abjection dans Only Fun #57

Closed
opened 2026-08-29 08:58:48 +00:00 by koka · 1 comment
Owner

Résultat joueur attendu

Retrouver dans Sanctuary 26.2 les actions volontairement grossières de l’ancien mod Abjection, sans ajouter un onzième JAR et sans inventer de nouvelle mécanique physiologique.

Les commandes historiques restent disponibles :

  • /piss : jet et particules pendant 15 secondes ;
  • /vomit : jet et particules pendant 8 secondes ;
  • /shit : jet pendant 6 secondes avec création régulière de abjection:shit_ball ;
  • /smoke : fumée pendant 10 secondes.

Le bloc abjection:shit_cube, son objet, sa recette, sa loot table et ses ressources historiques sont également restaurés.

Propriété et intégration

  • Module propriétaire : onlyfun, car il s’agit d’une règle ludique absurde.
  • Autres modules appelés : aucun pour ce premier lot ; le comportement de projectile sera ajouté par ABJ-02 via une API publique.
  • API ou donnée partagée : exposer le déclenchement serveur de chaque action afin que la commande et le futur raccourci ABJ-03 utilisent exactement le même code.
  • Impact sauvegarde/réseau : aucun état persistant ; les actions en cours restent temporaires et autoritaires côté serveur.
  • Compatibilité : conserver les IDs historiques abjection:shit_cube et abjection:shit_ball, et déclarer l’alias Fabric nécessaire pour reconnaître l’ancien mod sans créer un nouveau module distribué.

Critères d’acceptation

  • les quatre commandes reproduisent leurs durées, particules, impacts et messages historiques ;
  • relancer une commande pendant son action redémarre la durée comme dans la version historique ;
  • un joueur déconnecté, mort ou spectateur est retiré proprement des actions actives ;
  • /shit crée les mêmes objets abjection:shit_ball que ceux utilisés par ABJ-02 ;
  • abjection:shit_cube conserve son ID, son apparence, sa recette et son comportement de bloc proche de la boue ;
  • aucun besoin, jauge, accident automatique, toilettes, hygiène ou cooldown de gameplay n’est ajouté ;
  • les textes et noms sont disponibles en FR, EN et RU ;
  • Only Fun est versionné et ./gradlew :onlyfun:check puis ./gradlew check réussissent.

Découpage proposé

  1. Porter les registres, ressources et alias historiques dans Only Fun.
  2. Extraire un service serveur commun aux commandes et au futur raccourci.
  3. Porter les quatre actions et leurs tests.
  4. Ajouter les traductions FR/EN/RU et incrémenter la version d’Only Fun.

Source de référence : Fun/abjection (Minecraft 26.1.2, GPL-3.0-or-later).

## Résultat joueur attendu Retrouver dans Sanctuary 26.2 les actions volontairement grossières de l’ancien mod Abjection, sans ajouter un onzième JAR et sans inventer de nouvelle mécanique physiologique. Les commandes historiques restent disponibles : - `/piss` : jet et particules pendant 15 secondes ; - `/vomit` : jet et particules pendant 8 secondes ; - `/shit` : jet pendant 6 secondes avec création régulière de `abjection:shit_ball` ; - `/smoke` : fumée pendant 10 secondes. Le bloc `abjection:shit_cube`, son objet, sa recette, sa loot table et ses ressources historiques sont également restaurés. ## Propriété et intégration - Module propriétaire : `onlyfun`, car il s’agit d’une règle ludique absurde. - Autres modules appelés : aucun pour ce premier lot ; le comportement de projectile sera ajouté par ABJ-02 via une API publique. - API ou donnée partagée : exposer le déclenchement serveur de chaque action afin que la commande et le futur raccourci ABJ-03 utilisent exactement le même code. - Impact sauvegarde/réseau : aucun état persistant ; les actions en cours restent temporaires et autoritaires côté serveur. - Compatibilité : conserver les IDs historiques `abjection:shit_cube` et `abjection:shit_ball`, et déclarer l’alias Fabric nécessaire pour reconnaître l’ancien mod sans créer un nouveau module distribué. ## Critères d’acceptation - [ ] les quatre commandes reproduisent leurs durées, particules, impacts et messages historiques ; - [ ] relancer une commande pendant son action redémarre la durée comme dans la version historique ; - [ ] un joueur déconnecté, mort ou spectateur est retiré proprement des actions actives ; - [ ] `/shit` crée les mêmes objets `abjection:shit_ball` que ceux utilisés par ABJ-02 ; - [ ] `abjection:shit_cube` conserve son ID, son apparence, sa recette et son comportement de bloc proche de la boue ; - [ ] aucun besoin, jauge, accident automatique, toilettes, hygiène ou cooldown de gameplay n’est ajouté ; - [ ] les textes et noms sont disponibles en FR, EN et RU ; - [ ] Only Fun est versionné et `./gradlew :onlyfun:check` puis `./gradlew check` réussissent. ## Découpage proposé 1. Porter les registres, ressources et alias historiques dans Only Fun. 2. Extraire un service serveur commun aux commandes et au futur raccourci. 3. Porter les quatre actions et leurs tests. 4. Ajouter les traductions FR/EN/RU et incrémenter la version d’Only Fun. Source de référence : `Fun/abjection` (Minecraft 26.1.2, GPL-3.0-or-later).
Author
Owner

Livré dans Sanctuary 26.2.0-alpha.211 via la PR #76.

Les quatre actions historiques, le bloc et l'objet abjection:shit_cube, le service serveur commun, les IDs historiques et les traductions FR/EN/RU sont intégrés dans Only Fun. Les tests ciblés et ./gradlew check passent.

Livré dans **Sanctuary 26.2.0-alpha.211** via la PR **#76**. Les quatre actions historiques, le bloc et l'objet `abjection:shit_cube`, le service serveur commun, les IDs historiques et les traductions FR/EN/RU sont intégrés dans Only Fun. Les tests ciblés et `./gradlew check` passent.
koka closed this issue 2026-08-30 01:27:30 +00:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: koka/sanctuary#57