Archipelago
Jeux Guide OmégaCraft ↗
← Tous les jeux
🔓

The Escapists 2

Steam · BepInEx 5 Mis à jour il y a 6 jours

Un plugin BepInEx 5 relie The Escapists 2 à un serveur Archipelago. Trois fins au choix : évasions uniques, prisons différentes ou prisons complètes.

📖 Guide du joueur Voir sur GitHub ↗

Téléchargements

Pas encore de fichiers prêts à télécharger : le plugin se compile avec « dotnet build » et l'APWorld se construit avec « tools/build_apworld.py » (voir le guide du joueur).

Prérequis

  • The Escapists 2 (Steam, PC)
  • BepInEx 5

Aucun fichier du jeu n'est fourni : il te faut ta propre copie.

Présentation

Client Archipelago pour The Escapists 2 (Steam, PC). Il s'agit d'un plugin BepInEx 5 qui relie le jeu à un serveur Archipelago.

L'APWorld (génération des parties) part du travail de BigCelery842906 et azgamingwalker, TE2Archipelago/worlds/the_escapists_2, repris dans apworld/ et étendu (fins au choix, évasions multijoueur). Le reste du dépôt est la partie jeu : détecter les checks, recevoir les objets et appliquer les verrous.

Pour jouer, suivez le guide du joueur (installation, YAML, connexion, règles, dépannage).

apworld/the_escapists_2/  APWorld (Python) : items, locations, règles, options
tools/build_apworld.py    empaquette l'APWorld en .apworld
client/TE2Archipelago/    plugin C# (net35, Harmony)
docs/                     notes de rétro-ingénierie et remarques sur l'APWorld
dist/                     sortie du build : plugin à copier dans le jeu + the_escapists_2.apworld (générés)

Fins (option goal du YAML)

goal Condition Réglage
unique_escapes (défaut) réussir X évasions différentes unique_escapes_required
different_prisons s'évader au moins une fois de X prisons différentes prisons_required
complete_prisons réussir toutes les évasions de X prisons prisons_required

Le périmètre et les évasions spéciales comptent toujours. Avec multiplayer_escapes: true, les évasions coop (1 par prison normale, 2 par prison de transport, 13 au total) deviennent des checks et comptent aussi pour la fin. Elles demandent au moins deux joueurs ; leurs prérequis pour les prisons normales restent à établir. Les valeurs trop hautes sont ramenées au maximum possible (nombre de prisons activées, nombre d'évasions existantes).

The Escapists 2:
  goal: complete_prisons
  prisons_required: 2
  multiplayer_escapes: false

État actuel

Première partie de test jouée le 27/09/2026 sur un serveur local : connexion, livraison d'objets, checks de bureaux et de stats, plafonds de stats, verrou de plan, déblocage de prison, piège et évasion fonctionnent en jeu. Les points encore à confirmer sont listés dans docs/RECHERCHE_JEU.md.

Fonction Mécanisme dans le jeu Statut
Connexion, sauvegarde locale par slot fenêtre IMGUI (F10), BepInEx/config/TE2Archipelago/ testé en jeu (serveur local)
Checks d'évasion EscapePrisonFunctionality.RPC_EscapePrison testé en jeu (Meet the Crew) ; table issue des textes du jeu
Checks de bureaux (<Prison> Desk N) DeskInteraction.TryOpenDesk, bureaux numérotés par position testé en jeu (Rattlesnake : 37 trouvés / 38 attendus)
Checks de métiers (quota atteint) JobsManager.RPC_IncrementQuotaAchieved écrit
Checks de stats + plafond Progressive GymInteraction / StudyInteraction → CharacterStats.Increase*RPC testé en jeu
Plans (recettes verrouillées) CraftManager (3 verrous : affichage, identification, validation) testé en jeu
Prisons verrouillées dans le menu CampaignFrontendMenu.UpdateLockStatus testé en jeu (déblocage)
Objets reçus → inventaire, sinon bureau ItemManager.AssignItemRPC + ItemContainer.AddItemRPC testé en jeu (y compris inventaire plein)
Pièges (chaleur max, confinement, fouille, lâcher l'objet) SetHeat, SolitaryManager.TriggerLockdown, garde envoyé au bureau, DropEquipedItem Butterfingers testé en jeu, autres écrits
Messages dans le fil de discussion HUDMenuFlow → ChatFeedHUD.AddFeedMessage écrit
DeathLink (être assommé) Player.SetIsKnockedOut / Character.DamageSelf écrit, option client
Objectif (3 fins au choix) locations Escape: … validées, regroupées par prison écrit, générations testées

Compiler

Prérequis : SDK .NET (6 ou plus récent) et le jeu installé.

dotnet build client/TE2Archipelago -c Release

Le projet cherche le jeu dans les dossiers Steam courants. Sinon, indiquez-le avec la variable d'environnement TE2_GAME_DIR ou directement au build :

dotnet build client/TE2Archipelago -c Release -p:GameDir="C:\chemin\vers\The Escapists 2"

Le build rassemble les 4 DLL à livrer dans dist/BepInEx/plugins/TE2Archipelago/. Les DLL du jeu ne sont jamais copiées.

Utiliser l'APWorld

python tools/build_apworld.py

Le script produit dist/the_escapists_2.apworld (avec les champs version / compatible_version qu'Archipelago exige dans le manifeste). Copier ce fichier dans le dossier custom_worlds d'Archipelago (0.6.7 ou plus récent), puis générer normalement avec un YAML game: The Escapists 2.

Installer le client

  1. The Escapists 2 est un exécutable 32 bits : il faut BepInEx 5.4.x version x86 (BepInEx_win_x86_5.4.23.x.zip), décompressé à côté de TheEscapists2.exe.
  2. Lancer le jeu une fois pour que BepInEx crée ses dossiers, puis le fermer.
  3. Copier le dossier dist/BepInEx dans le dossier du jeu.
  4. Lancer le jeu : la fenêtre Archipelago s'affiche (F10 pour la masquer). Saisir serveur:port, le nom du slot, et le mot de passe s'il y en a un.

Touches : F10 fenêtre de connexion, F8 dump des données du jeu (objets, recettes, bureaux) dans BepInEx/config/TE2Archipelago/.

Règles appliquées par le client

  • Prisons : une prison de l'APWorld ne peut être lancée que si son objet … Prison Unlock a été reçu et qu'elle est activée dans le YAML. Les prisons hors APWorld (DLC, tutoriel, prisons personnalisées) restent jouables mais n'envoient aucun check.
  • Stats : la valeur démarre à 30. L'entraînement fait monter une progression virtuelle partagée entre les prisons ; elle déclenche les checks Strength/Stamina/Intellect Stat: N. La stat réelle est min(progression, 30 + objets reçus × step). « Stamina » dans l'APWorld correspond à la stat Cardio/Vitesse du jeu.
  • Plans : tant que Blueprint: X n'est pas reçu, la recette de X est grisée et le craft est refusé.
  • Objets reçus : les objets ordinaires et les pièges sont livrés dans la prison où l'on joue (inventaire, sinon bureau du joueur). Reçus hors d'une prison, ils attendent la prochaine partie. Chaque objet n'est livré qu'une fois par slot.
  • Checks hors connexion : ils sont mémorisés et envoyés à la reconnexion.

Suite du travail

  1. Tester en jeu les nouvelles fins, le nouveau comptage des bureaux (Rattlesnake Springs : 37 trouvés pour 38 attendus) et la connexion à un serveur public (archipelago.gg).
  2. Dumps F8 dans chaque prison pour fixer les correspondances d'objets (item_overrides.txt) et le nombre de bureaux.
  3. Prérequis réels des évasions coop des prisons normales (provisoirement : outils du périmètre).
  4. Ajouter au slot_data la liste des plans présents dans la partie, et une option DeathLink côté YAML (voir docs/APWORLD_NOTES.md).
  5. Fonctions prévues par le tableur : craftsanity, faveurs, achats aux détenus, prisons DLC, objets Archipelago cachés dans les bureaux.