Un plugin BepInEx 5 relie The Escapists 2 à un serveur Archipelago. Trois fins au choix : évasions uniques, prisons différentes ou prisons complètes.
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).
Aucun fichier du jeu n'est fourni : il te faut ta propre copie.
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)
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
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 |
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.
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.
BepInEx_win_x86_5.4.23.x.zip),
décompressé à côté de TheEscapists2.exe.dist/BepInEx dans le dossier du jeu.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/.
… 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.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.Blueprint: X n'est pas reçu, la recette de X est grisée et le craft est refusé.item_overrides.txt) et le nombre de bureaux.slot_data la liste des plans présents dans la partie, et une option DeathLink côté YAML
(voir docs/APWORLD_NOTES.md).