DalekMC-DeathSpectator icon

DeathSpectator

À ta mort, tu passes en spectateur comme dans Minecraft : vol libre à travers les murs, lumière, puis suivi d'un joueur d'un clic. Côté client uniquement.

By DalekMC
Last updated 3 hours ago
Total downloads 3
Total rating 0 
Categories Tools AI Generated
Dependency string DalekMC-DeathSpectator-1.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2305 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2305

README

DeathSpectator : spectateur à la Minecraft quand tu meurs

Quand tu meurs, tu passes directement en spectateur comme le /gamemode spectator de Minecraft : tu voles librement à travers les murs depuis l'endroit de ta mort, au lieu d'être collé derrière un coéquipier. Tu peux suivre un joueur d'un clic, puis revenir au vol libre quand tu veux.

Le mod est côté client : il ne change que ta caméra. Ceux qui ne l'ont pas gardent le spectateur normal du jeu.

Commandes (une fois mort)

Action Touche
Voler ZQSD / WASD (les touches de déplacement du jeu, dans la direction où tu regardes)
Monter / descendre Espace / Ctrl (saut / accroupi du jeu)
Aller plus vite Maj (sprint du jeu)
Changer la vitesse Molette (1 à 80 m/s)
Lumière (toi seul la vois) L
Suivre le joueur visé (ou le plus proche) Clic gauche
Passer du vol libre au suivi, et inversement V
Quitter le joueur suivi pour voler Ctrl (comme Maj dans Minecraft) ou V

En suivi, le clic gauche et E font défiler les joueurs comme dans le jeu de base. Les commandes indiquées en bas de l'écran remplacent le texte « (Spectating: …) » pendant le vol libre.

Comportement

  • La caméra part de tes yeux au moment de ta mort.
  • Tu traverses tout : murs, sol, portes. Dans le bâtiment, le brouillard intérieur et l'éclairage suivent ta caméra, et la lumière (une copie de la vision nocturne du jeu) t'aide à voir dans le noir.
  • Tu entends depuis la position de ta caméra (l'écoute du son est déjà sur la caméra spectateur dans le jeu de base).
  • Quand le vaisseau décolle, tu repasses automatiquement en suivi d'un joueur pour partir avec lui (réglable).
  • Quand tout le monde est mort, le jeu reprend la caméra pour sa séquence de fin, comme d'habitude.
  • Réanimé (fin de journée, ou un autre mod comme le Médecin de ModClasses), tu retrouves ta caméra normale.
  • En solo, ta mort termine la journée : le vol libre ne sert donc qu'en multijoueur.

Installation

Avec r2modman / Thunderstore Mod Manager : installer DeathSpectator depuis le gestionnaire (BepInExPack est installé automatiquement). À la main : installer BepInExPack 5.4.2305, puis copier DeathSpectator.dll dans BepInEx/plugins/.

Seuls les joueurs qui veulent le vol libre ont besoin du mod ; il n'est pas nécessaire chez l'hôte.

Testé

  • Jeu : build Steam 22825947 (Unity 2022.3.62), BepInEx 5.4.23.5, en LAN, seul (test automatique : mort, vol, lumière, intérieur, réanimation, fin de partie).
  • Pas encore testé à plusieurs joueurs : suivre un joueur d'un clic, retour au suivi au décollage avec des vivants à bord, mod installé chez un client et pas chez l'hôte.

Ne pas l'installer avec SpectatorMode (mon autre mod, touche F6) : les deux prennent la main sur la caméra d'un joueur mort.

Réglages

BepInEx/config/emeric.deathspectator.cfg (tous locaux, rien n'est imposé par l'hôte) :

  • VolLibreALaMort : passer directement en vol libre à la mort (sinon on suit un joueur et V ou Ctrl passe en vol libre) ;
  • Vitesse, MultiplicateurSprint : vitesse de départ et bonus de sprint ;
  • LumiereAuDepart : lumière allumée en passant en vol libre ;
  • SuivreAuDecollage : repasser en suivi quand le vaisseau décolle ;
  • AfficherAide : afficher les commandes à l'écran ;
  • touches Mode (V) et Lumiere (L).

Compiler, tester, empaqueter

  1. La référence « publicisée » du jeu est dans lib/Assembly-CSharp.dll (copie de celle de SoundBox, même version du jeu). Après une mise à jour du jeu, la régénérer avec le Publicizer de ModClasses (ModClasses/tools/Publicizer, voir son README).
  2. dotnet build -c Release : produit bin/Release/netstandard2.1/DeathSpectator.dll et le copie dans le profil r2modman « DeathSpectator » s'il existe. Le chemin du jeu se règle dans DeathSpectator.csproj (GameDir).
  3. powershell -File autotest.ps1 : lance le jeu sur ce profil, héberge une partie LAN, atterrit, tue le joueur et vérifie le vol libre (position de départ, déplacement, sprint, molette, lumière, intérieur, réanimation, fin de partie). Résultat et captures dans BepInEx/config/DeathSpectator/autotest/ du profil.
  4. powershell -File package.ps1 : produit dist/DeathSpectator-<version>.zip.

Notes techniques

  • Pas de nouvelle caméra : on reprend StartOfRound.spectateCamera, que le jeu active à la mort. Le jeu continue de la placer derrière le joueur suivi (ce qui garde à jour le « joueur suivi » utilisé par la voix et les effets), puis un postfix de PlayerControllerB.LateUpdate la replace à la position du vol libre.
  • Le clic gauche et E sont interceptés en vol libre (ActivateItem_performed, Interact_performed) pour ne pas changer de joueur suivi en douce. Suivre un joueur reproduit ce que fait SpectateNextPlayer.
  • Soleil (TimeOfDay.SetInsideLightingDimness), brouillard intérieur et occlusion (StartOfRound.UpdateOcclusionCuller) sont réglés d'après la caméra et non d'après le joueur suivi, sinon l'extérieur serait sombre quand le joueur suivi est dans le bâtiment.

Limites connues

  • Seul le joueur mort voit sa caméra : les autres ne voient aucun fantôme, et la voix d'un mort reste celle du jeu de base.
  • Les sons sont entendus depuis la caméra, mais les filtres de voix (talkie, étouffement) suivent toujours le joueur suivi.
  • Non testé avec d'autres mods de spectateur ou de caméra (SpectatorMode, mods de « free cam »).