Proton: Monture et lame II: Bannerlord (261550)

Créé le 30 mars 2020  ·  540Commentaires  ·  Source: ValveSoftware/Proton

Rapport de compatibilité

  • Nom du jeu avec des problèmes de compatibilité: Mount & Blade II Bannerlord
  • Steam AppID du jeu: 261550

Information système

  • GPU: X.Org AMD Radeon RX 5700 XT (NAVI10, DRM 3.36.0, 5.5.11-050511-générique, LLVM 9.0.0)
  • Version du pilote / LLVM: 4.5 (profil de compatibilité) Mesa 19.2.8
  • Version du noyau: 5.5.11-050511-gen
  • Lien vers le rapport d'informations système complet comme Gist : https://gist.github.com/Yarwin/5648be675565aafa1e3930fede59ca07
  • Version Proton: 5.0-5

Je confirme:

  • [x] que je n'ai pas trouvé de rapport de compatibilité existant pour ce jeu.
  • [x] que j'ai vérifié si des mises à jour pour mon système sont disponibles.

Journal des plantages Proton:

steam-261550.log

Symptômes

Le jeu ne se lance pas

la reproduction

  1. Télécharger M&B II: Bannerlord
  2. Essayez de l'exécuter
  3. Le jeu plante avec:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'ManagedStarter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
File name: 'ManagedStarter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'

message dans le journal.

Solution de contournement actuelle

Proton 5.5-GE https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.5-GE-1 + protontricks 261550 dotnet472 (Les dépendances nécessaires de Bannerlord peuvent être trouvées ici: https: // forums .taleworlds.com / index.php? threads / installation-des-dépendances-nécessaires-manquantes.407126 /)
L'installation de dotnet core peut réduire considérablement le nombre de plantages: https://github.com/ValveSoftware/Proton/issues/3706#issuecomment -609959973, https://github.com/ValveSoftware/Proton/issues/3706#issuecomment -610022040

Multijoueur: cela fonctionne, il suffit de sauter l'installation d'un BattleEye lorsque vous y êtes invité.

.NET Game compatibility - Unofficial

Commentaire le plus utile

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

L'approche la plus conviviale "pour les idiots":

  • Téléchargez la version exacte de Proton que j'utilise: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz
  • Collez-le dans ~/.steam/root/compatibilitytools.d
  • Extrayez-le ( cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz )
  • Redémarrez Steam
  • Cliquez avec le bouton droit sur Bannerlord dans votre bibliothèque, cliquez sur Propriétés et changez la version de Proton en "proton_5.0-local"
  • ???
  • Profit

Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

Tous les 540 commentaires

Quelques notes:

  • le jeu utilise Battleye Anti-Cheat - c'est apparemment obligatoire même si vous voulez juste jouer en solo. Aucune idée s'il existe un paramètre de lancement qui le désactive.

Vous pouvez renommer deux fichiers .exe dans / Mount & Blade II Bannerlord / bin / Win64_Shipping_Client /

  • renommer "TaleWorlds.MountAndBlade.Launcher.exe" en "TaleWorlds.MountAndBlade.Launcher.exe_backup" (ou quelque chose de similaire - il n'est tout simplement pas autorisé à conserver son nom d'origine)

  • renommer "Bannerlord.exe" en "TaleWorlds.MountAndBlade.Launcher.exe"

pour au moins faire démarrer le jeu, voir les écrans de démarrage, puis j'arrive au point où je dois interagir avec le jeu pour la première fois (modifier les paramètres de luminosité) à quel point mon processeur et mon GPU se détraquent et je ne peux pas interagir avec le jeu du tout.

Je suis en mesure de confirmer que le contournement du lanceur (en déplaçant TaleWorlds.MountAndBlade.Launcher.exe et en le remplaçant par une copie de Bannerlord.exe ) l'amène au moins à l'écran d'étalonnage de la luminosité (ou en tant que loin du menu principal si je mets brightness_calibrated = 1 dans $COMPATDATA/261550/pfx/drive_c/users/steamuser/My Documents/Mount and Blade II Bannerlord/Configs/engine_config.txt ).

Cependant, il semble qu'il y ait un bogue avec l'entrée de la souris; le curseur se déplace et est visible, mais les options de menu ne sont pas mises en surbrillance lors de leur déplacement et le jeu ne répond pas aux clics (et naturellement il n'y a pas de navigation au clavier ...). Le problème persiste à chaque permutation de V-sync, lancement dans un bureau virtuel, désactivation de Steam Overlay, etc.

Le spamming de fixme:win:GetMouseMovePointsEx (24 0x3c87f298 0x3c87f2b0 64 1) stub particulièrement intéressant pour steam-261550.log fixme:win:GetMouseMovePointsEx (24 0x3c87f298 0x3c87f2b0 64 1) stub . Peut-être lié au bug de Wine 36873 ?

Discussion supplémentaire sur le forum de TaleWorlds: https://forums.taleworlds.com/index.php?threads/linux.385761/page -2 et https://forums.taleworlds.com/index.php?threads/b0 -8 -9-clics-de-souris-non-enregistrés-sur-linux.395650 /

EDIT: j'ai essayé de brancher un contrôleur, et cela m'a permis de naviguer dans le menu. Je vais voir jusqu'où je peux aller, mais ... progresse!

Pour moi, le jeu plantait toujours au lancement après avoir exécuté Bannerlord.exe au lieu de TaleWorlds.MountAndBlade.Launcher.exe . En utilisant protontricks, j'ai installé dotnet4.8 et vcrun2015 - le jeu plante toujours mais au moins je suis capable d'admirer l'écran de chargement du jeu.

Peut confirmer que j'ai le même problème avec les entrées de souris, sur Manjaro avec Proton 5.0-5. J'étais en version bêta fermée et le jeu fonctionnait bien avant la toute dernière mise à jour, donc je suis assez confiant que le reste du jeu devrait fonctionner une fois que nous aurons réussi à résoudre ce problème de navigation.

Donc, après avoir cherché à obtenir un personnage entièrement créé via une manette de jeu Logitech, il semble que j'ai heurté un autre barrage routier sous la forme d'un crash brutal à l'écran de chargement juste après la création du personnage (entrée pertinente de steam-261550.log : wine: Call from 0x7b00fc3e to unimplemented function api-ms-win-crt-private-l1-1 -0.dll._o___stdio_common_vswprintf, aborting ). Cela persiste même après avoir exécuté protontricks 261550 vcrun2015 et protontricks 261550 vcrun2017 .

Juste un rapide google car je ne peux pas le tester pour le moment moi-même (toujours en téléchargement), mais un problème similaire a apparemment tourmenté le lanceur BNet à un moment donné et a été corrigé en ajoutant ucrtbase et api-msi-win, etc. winecfg.

Les batailles personnalisées fonctionnent lorsque vous y accédez à l'aide de la manette de jeu, et lorsque dans le jeu réel, vous pouvez utiliser la souris pour combattre.

Cependant, le jeu pour moi avait l'air incroyablement délavé et lumineux lorsque je jouais et que la modification des paramètres faisait planter le jeu la moitié du temps, tout en réglant tout sur un niveau bas, le jeu plante.
Voici un journal du plantage lors de l'enregistrement des paramètres.
steam-261550.log

Modifier: la modification des paramètres par rapport au niveau élevé a entraîné l'arrêt des coutumes, alors évitez de le faire.

Bon, j'ai fait quelques lectures, des recherches, téléchargé le jeu trois fois, et quelques recherches supplémentaires, et je crois que je l'ai compris.

Bannerlord utilise Battleye, un logiciel Kernel Anti-Cheat. Étant donné que l'instance Proton-Wine n'est pas le noyau Linux de base, mais le noyau Windows, Battleye est incapable d'intercepter l'entrée de la souris directement depuis le port USB pour vérifier que c'est la vraie affaire, puis de la laisser entrer dans le jeu, ou prendre l'entrée souris de Wine comme une entrée souris artificielle basée sur un programme, ce qui signifie que le système Anti-Cheat entre en action.

Je me souviens avoir lu quelque part que Battleye ne joue pas du tout bien avec Linux, mais ce commentaire datait de ... 3 ans? Je ne connais donc pas l'état actuel du logiciel anti-triche. Donc, je pense que les options sont de demander à TaleWorlds de configurer Battleye pour qu'il joue bien avec Proton, de le désactiver pour Proton jusqu'à ce qu'une version Linux appropriée puisse être créée, puis de le réactiver là-bas, (ils utilisent Mono pour quelque chose. le lanceur?) Attendez que le jeu soit correctement sorti car il y a de fortes chances qu'ils retardent le support de plusieurs systèmes d'exploitation jusqu'à plus tard dans l'accès anticipé, il est donc 10 fois plus facile de distribuer des mises à jour ... Ou de trouver comment faire laissez un Battleye exécutable par fenêtre aller directement dans le noyau basé sur Linux afin qu'il puisse analyser tout ce qu'il veut et laissez-nous faire des entrées dans le jeu sans déclencher l'anti-triche ...

Donc je suppose que nous attendons un peu plus longtemps Bannerlord.

Bon, j'ai fait quelques lectures, des recherches, téléchargé le jeu trois fois, et quelques recherches supplémentaires, et je crois que je l'ai compris.

Bannerlord utilise Battleye, un logiciel Kernel Anti-Cheat. Étant donné que l'instance Proton-Wine n'est pas le noyau Linux de base, mais le noyau Windows, Battleye est incapable d'intercepter l'entrée de la souris directement depuis le port USB pour vérifier que c'est la vraie affaire, puis de la laisser entrer dans le jeu, ou prendre l'entrée souris de Wine comme une entrée souris artificielle basée sur un programme, ce qui signifie que le système Anti-Cheat entre en action.

Je me souviens avoir lu quelque part que Battleye ne joue pas du tout bien avec Linux, mais ce commentaire datait de ... 3 ans? Je ne connais donc pas l'état actuel du logiciel anti-triche. Donc, je pense que les options sont de demander à TaleWorlds de configurer Battleye pour qu'il joue bien avec Proton, de le désactiver pour Proton jusqu'à ce qu'une version Linux appropriée puisse être créée, puis de le réactiver là-bas, (ils utilisent Mono pour quelque chose. le lanceur?) Attendez que le jeu soit correctement sorti car il y a de fortes chances qu'ils retardent le support de plusieurs systèmes d'exploitation jusqu'à plus tard dans l'accès anticipé, il est donc 10 fois plus facile de distribuer des mises à jour ... Ou de trouver comment faire laissez un Battleye exécutable par fenêtre aller directement dans le noyau basé sur Linux afin qu'il puisse analyser tout ce qu'il veut et laissez-nous faire des entrées dans le jeu sans déclencher l'anti-triche ...

Donc je suppose que nous attendons un peu plus longtemps Bannerlord.

Je n'achète pas ça. Si Battleye cause des problèmes de curseur, pourquoi ne verrions-nous pas le même problème lors de l'utilisation d'une manette de jeu?

Battleye n'est pas le problème, c'est une installation optionnelle et uniquement requise pour le multijoueur.

Battleye n'est pas le problème, c'est une installation optionnelle et uniquement requise pour le multijoueur.

Pour développer la publication de tkamat, j'étais également en version bêta fermée et le jeu fonctionnait encore pour quelques correctifs après que Battleeye ait été mis à jour dans la version bêta. D'après ce que je comprends, ils l'ont rendu facultatif à l'époque, vous pouvez simplement ignorer l'annulation de l'installation de Battle Eye lors de la première exécution et cela ne vous expulserait pas des jeux pour ne pas l'utiliser.

Il y a environ deux semaines, il y avait un patch qui a cassé la capacité de jouer de nombreux utilisateurs de Windows, cela avait apparemment quelque chose à voir avec le fait d'avoir un contrôleur ou un joystick branché tout en essayant de jouer avec le clavier / la souris. Ils ont corrigé le problème quelques jours plus tard, mais tous les utilisateurs de Linux sur le forum ont signalé l'absence d'entrée de la souris, qu'un contrôleur soit branché ou non, même après la mise à jour.

Nous avons spéculé sur le forum sur le fait que cela pourrait être un problème avec Steamplay présentant un contrôleur virtuel au jeu au niveau du pilote, mais nous ne l'avons jamais confirmé. En ce qui concerne le crash au démarrage d'une campagne, nous ne sommes jamais allés aussi loin car il s'agissait d'une version bêta multijoueur.

Battleye n'est pas le problème, c'est une installation optionnelle et uniquement requise pour le multijoueur.

Pour développer la publication de tkamat, j'étais également en version bêta fermée et le jeu fonctionnait encore pour quelques correctifs après que Battleeye ait été mis à jour dans la version bêta. D'après ce que je comprends, ils l'ont rendu facultatif à l'époque, vous pouvez simplement ignorer l'annulation de l'installation de Battle Eye lors de la première exécution et cela ne vous expulserait pas des jeux pour ne pas l'utiliser.

Il y a environ deux semaines, il y avait un patch qui a cassé la capacité de jouer de nombreux utilisateurs de Windows, cela avait apparemment quelque chose à voir avec le fait d'avoir un contrôleur ou un joystick branché tout en essayant de jouer avec le clavier / la souris. Ils ont corrigé le problème quelques jours plus tard, mais tous les utilisateurs de Linux sur le forum ont signalé l'absence d'entrée de la souris, qu'un contrôleur soit branché ou non, même après la mise à jour.

Nous avons spéculé sur le forum sur le fait que cela pourrait être un problème avec Steamplay présentant un contrôleur virtuel au jeu au niveau du pilote, mais nous ne l'avons jamais confirmé. En ce qui concerne le crash au démarrage d'une campagne, nous ne sommes jamais allés aussi loin car il s'agissait d'une version bêta multijoueur.

Le jeu fonctionnait-il bien sous Linux avant le battleye? J'étais sous Windows pendant la version bêta, donc je n'ai jamais pu l'essayer via proton.

Battleye n'est pas le problème, c'est une installation optionnelle et uniquement requise pour le multijoueur.

Pour développer la publication de tkamat, j'étais également en version bêta fermée et le jeu fonctionnait encore pour quelques correctifs après que Battleeye ait été mis à jour dans la version bêta. D'après ce que je comprends, ils l'ont rendu facultatif à l'époque, vous pouvez simplement ignorer l'annulation de l'installation de Battle Eye lors de la première exécution et cela ne vous expulserait pas des jeux pour ne pas l'utiliser.
Il y a environ deux semaines, il y avait un patch qui a cassé la capacité de jouer de nombreux utilisateurs de Windows, cela avait apparemment quelque chose à voir avec le fait d'avoir un contrôleur ou un joystick branché tout en essayant de jouer avec le clavier / la souris. Ils ont corrigé le problème quelques jours plus tard, mais tous les utilisateurs de Linux sur le forum ont signalé l'absence d'entrée de la souris, qu'un contrôleur soit branché ou non, même après la mise à jour.
Nous avons spéculé sur le forum sur le fait que cela pourrait être un problème avec Steamplay présentant un contrôleur virtuel au jeu au niveau du pilote, mais nous ne l'avons jamais confirmé. En ce qui concerne le crash au démarrage d'une campagne, nous ne sommes jamais allés aussi loin car il s'agissait d'une version bêta multijoueur.

Le jeu fonctionnait-il bien sous Linux avant le battleye? J'étais sous Windows pendant la version bêta, donc je n'ai jamais pu l'essayer via proton.

Il a commencé à fonctionner sur Linux vers décembre, s'est écrasé de temps en temps, mais les performances étaient acceptables après avoir terminé la compilation des shaders pour chaque carte. J'étais également sur une carte graphique relativement sous-alimentée (rx 480) à l'époque, donc je pense qu'en termes de performances, le jeu sera correct sous Linux si nous pouvons obtenir une petite aide de taleworlds pour résoudre ces problèmes. Nous avons obtenu une réponse des développeurs sur le problème de la souris auquel nous étions confrontés, il semble donc qu'ils ne soient au moins pas hostiles à la prise en compte des utilisateurs de Linux et du proton.

Quelle journée pour ne pas pouvoir retrouver ma manette! J'ai réussi à faire fonctionner quelque chose! J'ai suivi les changements de noms comme ci-dessus, puis j'ai essayé de connecter mon commutateur Joy-Cons à l'aide de ce pilote pratique .

Lorsque les joy-cons sont reconnus comme un contrôleur pro, je suis capable de cliquer sur des objets avec la souris après avoir utilisé le joystick gauche pour positionner le curseur. La visée et le clic de la souris fonctionnent bien dans mes batailles de test rapides, le problème peut donc être lié au menu. Je ne sais pas si cela fonctionnera avec d'autres contrôleurs, ou si cela a quelque chose à voir avec la façon dont le pilote est implémenté.

Juste un rapide google car je ne peux pas le tester pour le moment moi-même (toujours en téléchargement), mais un problème similaire a apparemment tourmenté le lanceur BNet à un moment donné et a été corrigé en ajoutant ucrtbase et api-msi-win, etc. winecfg.

L'ajout de ceux-ci en tant que remplacements entraînait toujours un plantage, mais j'ai pu le forcer brutalement en suivant les étapes d' un problème similaire concernant Age of Empires 2: Definitive Edition :

cd /home/$USER/.steam/steam/steamapps/compatdata/261550/pfx/drive_c/windows/system32/
wget "https://aka.ms/vs/16/release/vc_redist.x64.exe"
cabextract vc_redist.x64.exe
cabextract a10

Ce qui m'a amené beaucoup plus loin:

Tutorial works

La souris continue d'être inutilisable pour les boîtes de dialogue et le menu de pause (vous pouvez «Cliquer pour continuer» là-bas, donc elle reconnaît évidemment les clics de souris, mais ne sait pas si la souris est réellement sur quelque chose, sauf si vous déplacez le curseur avec le contrôleur). Fonctionne bien pour le mouvement et le combat. J'ai parcouru quelques objectifs du didacticiel avant de me bloquer à nouveau (cette fois à cause d'un eventfd: Too many open files ; je vais redémarrer avec un ulimit -Hn gonflé et réessayer).

EDIT re: BattlEye:

Bannerlord utilise Battleye, un logiciel Kernel Anti-Cheat. Étant donné que l'instance Proton-Wine n'est pas le noyau Linux de base, mais le noyau Windows, Battleye est incapable d'intercepter l'entrée de la souris directement depuis le port USB pour vérifier que c'est la vraie affaire, puis de la laisser entrer dans le jeu, ou prendre l'entrée souris de Wine comme une entrée souris artificielle basée sur un programme, ce qui signifie que le système Anti-Cheat entre en action.

Cela semble peu probable. Si c'était lié à l'anti-triche, je m'attendrais à l'opposé des symptômes actuels (c'est-à-dire que la souris fonctionne bien dans les menus / dialogues, mais pas pour le mouvement / combat). Je m'attendrais également à ce que les claviers et les contrôleurs soient affectés de la même manière (ce qui ne semble pas être le cas).

BattlEye va certainement mettre un frein aux choses pour le multijoueur, mais cela devrait être totalement inutile pour le mode solo (et en effet, d'autres jeux BattlEye avec des modes solo fonctionnent raisonnablement bien sous Proton, par exemple Conan: Exiles).

@YellowApple Pourriez-vous voir si le correctif suivant corrige le crash sans vcredist? ( à savoir définir ucrtbase et api-ms-win-crt-private-l1-1-0 à BuiltIn lors du test)

https://gist.github.com/qsniyg/4ba247c7398e3a1926988e3f6ca252ce

Ce serait cool si cela pouvait être corrigé en amont sans avoir besoin de remplacements :) Je n'ai pas le jeu pour le moment, donc je ne peux pas tester.

@YellowApple J'ai essayé de reproduire votre solution, mais cela ne fonctionne malheureusement pas pour moi, et la campagne plante après la création du personnage. Les fichiers journaux semblent toujours pointer vers api-ms-win-crt-private-l1-1-0.dll._o___stdio_common_vswprintf comme problème. Avez-vous effectué d'autres étapes, comme réinstaller vcrun-2017 ou autre chose?

Donc, augmenter mon ulimit -Hn aidé, et j'ai pu aller jusqu'à la carte principale, mais j'ai remarqué que toute tentative de sauvegarde du jeu entraînerait le gel temporaire du jeu pendant quelques minutes tout en fixant chaque noyau / thread sur mon CPU (certains sons continuent cependant de jouer en arrière-plan). Je soupçonne qu'il existe une fonction de sauvegarde automatique qui déclenche également des gels similaires (qui s'est produit après avoir triché dans un inventaire, et qui s'est reproduit au ralenti pendant un certain temps).

En outre, il semble que les boîtes de dialogue contextuelles feront disparaître le curseur de la souris piloté par le joystick (je n'ai pas déterminé si cela se produit toujours ou non; avec suffisamment de mouvements, j'ai réussi à faire apparaître brièvement le bouton "OK", donc je pense le curseur est juste invisible).

Je peux également confirmer que les boutons de la souris et la molette de défilement fonctionnent pleinement dans les menus / boîtes de dialogue; vous devez simplement utiliser le contrôleur pour déplacer le curseur sur l'élément sur lequel vous voulez cliquer ou faire défiler. Donc, quelle que soit la cause de ce bug, cela a uniquement à voir avec l'endroit où le jeu pense que la souris pointe.

@YellowApple Pourriez-vous voir si le correctif suivant corrige le crash sans vcredist? (c'est-à-dire définir ucrtbase et api-ms-win-crt-private-l1-1-0 sur builtin lors du test)

Fera @qsniyg (dès que j'aurai Vagrant à coopérer). Ces fonctions sont-elles toutes implémentées mais supprimées ou quelque chose du genre?

@YellowApple J'ai essayé de reproduire votre solution, mais cela ne fonctionne malheureusement pas pour moi, et la campagne plante après la création du personnage. Les fichiers journaux semblent toujours pointer vers api-ms-win-crt-private-l1-1-0.dll._o ___ stdio_common_vswprintf comme problème. Avez-vous effectué d'autres étapes, comme réinstaller vcrun-2017 ou autre chose?

@tkamat : étapes exactes que j'ai faites (au meilleur de mes souvenirs):

  • protontricks 261550 vcrun2015 (et a lancé le jeu; planté)
  • protontricks 261550 vcrun2017 (et a lancé le jeu; planté)
  • Ajout de remplacements natifs pour ucrtbase et api-ms-win-crt-private-l1-1-0 via winecfg (et a exécuté le jeu; planté)
  • Est-ce que tout le truc "claquer un EXE de redistribution VC avec cabextract " (et exécuter le jeu; a fonctionné)

@YellowApple est peut-être un coup aveugle - mais pouvez-vous essayer d'installer dotnet 4.8 via protontricks également? J'ai pu utiliser la souris dans l'écran de démarrage / de chargement.

@YellowApple

Fera @qsniyg (dès que j'aurai Vagrant à coopérer). Ces fonctions sont-elles toutes implémentées mais supprimées ou quelque chose du genre?

Ils sont implémentés, mais Windows utilise ces dll api-ms-win-... qui importent simplement à partir d'autres dll (advapi32, kernel32, ucrtbase, etc.). Je suppose que wine ajoute des fonctions à ces dll au besoin afin de s'assurer qu'elles sont correctes.

Il est possible que le jeu plante à nouveau sur une autre fonction non implémentée de l'une de ces dll d'API. N'hésitez pas à les ajouter vous-même ou à me le faire savoir. J'espère qu'après un peu d'itération, nous serons en mesure de trouver les fonctions nécessaires, puis de l'envoyer en amont vers wine :)

@Yarwin @tkamat J'ai un pressentiment que l'installation protontricks de dotnet4.8 peut être à l'origine de votre problème (bien que cela semble me laisser utiliser le lanceur prévu, la souris devait être contrôlée via le contrôleur dans le jeu réel). Je l'ai également installé et je n'ai pas pu faire fonctionner la solution de
J'ai fini par supprimer $COMPATDATA/2615501 et j'ai suivi le processus de vérification des fichiers pour Proton 5.0 et Bannerlord. Après cela, la méthode cabextract fonctionné (n'oubliez pas que vous devrez modifier à nouveau $COMPATDATA/261550/pfx/drive_c/users/steamuser/My Documents/Mount and Blade II Bannerlord/Configs/engine_config.txt pour définir brightness_calibrated = 1 ). Cela peut résoudre votre problème quelle qu'en soit la cause.

+1 pour le blocage causé par l'enregistrement. J'ai également pu terminer le tutoriel jusqu'à ce qu'un blocage me fasse fermer, maintenant un nouveau dossier est apparu à $COMPATDATA/261550/pfx/drive_c/users/steamuser/My Documents/Mount and Blade II Bannerlord/Game Saves .

@YellowApple est peut-être un coup aveugle - mais pouvez-vous essayer d'installer dotnet 4.8 via protontricks également? J'ai pu utiliser la souris dans l'écran de démarrage / de chargement.

Cela ne semble pas avoir eu d'effet pour moi.

+1 pour le blocage causé par l'enregistrement. J'ai également pu terminer le tutoriel jusqu'à ce qu'un blocage me fasse fermer, maintenant un nouveau dossier est apparu à $COMPATDATA/261550/pfx/drive_c/users/steamuser/My Documents/Mount and Blade II Bannerlord/Game Saves .

Ouais, j'ai aussi rencontré ce blocage post-tutoriel. Un peu me donner des coups de pied pour ne pas seulement l'attendre et voir si cela se serait finalement débouché comme ces autres arrêts de sauvegarde semblent le faire.

@ChemiKyle merci pour la pointe, je viens de terminer le tutoriel mais maintenant je suis bloqué à l'écran de notification depuis que le curseur de ma souris a disparu. J'ai passé quelques minutes à tripoter le joystick pour voir s'il était invisible, mais ne fonctionnait pas lol. Je pense que le problème de la souris ne devrait pas être trop difficile à résoudre en général, étant donné que l'entrée du contrôleur fonctionne correctement. Mes journaux de vapeur ont un avertissement concernant GetMouseMovePointsEx spammé plusieurs fois, mais pour autant que je sache, cette fonction est déjà implémentée dans wine.

@YellowApple @tkamat J'ai créé un correctif hacky pour GetMouseMovePointsEx, je ne l'ai pas testé, donc cela pourrait être faux, mais cela vous dérangerait-il de lui donner une chance?

https://gist.github.com/qsniyg/4ba247c7398e3a1926988e3f6ca252ce#file -getmousemovepointsex-patch

Il est écrit contre wine-staging, vous devrez donc peut-être l'appliquer manuellement.

@qsniyg J'ai juste essayé un nouveau préfixe avec vos deux correctifs; pas de dés avec non plus. L'entrée de la souris est toujours interrompue et plante toujours en raison de cette même fonction non implémentée. Journaux de l'exécution corrigée.

EDIT: ah, on dirait que le patch était pour v f wprintf alors que le crash est dû à v s wprintf. Laisse-moi voir si je peux régler ça ...

@YellowApple Darn, eh bien ça valait au moins une chance :) Je suis assez aveugle quant à ce que pourrait être le problème, je ne possède pas encore le jeu donc je ne peux pas tester non plus. Cela étant dit, un journal +rawinput,+win,+cursor,+dinput,+xinput donnerait probablement beaucoup d'informations sur le problème (même si vous devrez peut-être .gz compresser le journal ... :)

Quoi qu'il en soit, voici le patch vswprintf: https://gist.github.com/qsniyg/4ba247c7398e3a1926988e3f6ca252ce#file -vswprintf-patch

Bon sang, ça a fait l'affaire (même si je l'ai corrigé en tant que _o___stdio_common_vswprintf(int64 wstr long wstr ptr ptr) , car j'essayais de faire correspondre le plus possible

Je vais essayer d'obtenir des journaux avec ces indicateurs afin que nous puissions, espérons-le, progresser sur ce problème de souris.

Bon à savoir! Envoyé :)

https://source.winehq.org/patches/data/182375
https://source.winehq.org/patches/data/182376

Je ne sais pas pourquoi wine l'a fait de cette façon non plus, j'ai juste copié comment ils ont déclaré vswprintf à partir d'une déclaration précédente dans le fichier :)

Bonjour, j'ai ajouté l'application à Wine AppDB: https://appdb.winehq.org/objectManager.php?sClass=version&iId=38834&iTestingId=107964

@qsniyg Voulez-vous lier les bogues à l'application ou dois-je?

@tomhobson Allez-y! (Je ne fais en aucun cas partie de l'équipe de développement de vin, j'écris juste des correctifs et je m'embarrasse sur la liste de diffusion car je me trompe toujours haha)

@tomhobson Allez-y! (Je ne fais en aucun cas partie de l'équipe de développement de vin, j'écris juste des correctifs et je m'embarrasse sur la liste de diffusion car je me trompe toujours haha)

Si vous écrivez des correctifs, vous semblez faire partie de l'équipe de développement de Wine :)

Ok, j'ai lié le bogue: https://bugs.winehq.org/show_bug.cgi?id=36873

Je ne sais pas comment / si vous liez les correctifs au bogue. Mais lorsqu'ils fusionnent, nous pouvons nous attaquer au suivant.

Y a-t-il des bugs que j'ai manqués?

Ainsi, "l'état de l'art" avec tous les correctifs ici nécessite encore essentiellement une manette de jeu pour contrôler les menus. Est-ce correct? Il suffit de vérifier que le problème de la souris n'a jamais été résolu, même expérimentalement.

@allquixotic : c'est correct.

Salut les gars! Je ne joue pas sur Linux ni sur Wine, mais j'ai eu un problème similaire: la manette de jeu était correcte pour le curseur de la souris mais pas pour la vraie souris.

Je joue sur Shadow (ordinateur distant) et quand j'ai mis le "curseur de capture" sur, le problème avait disparu. Je ne sais pas comment fonctionne exactement Wine, mais peut-être que si cette option est également disponible, vous pouvez l'essayer.

À votre santé

Salut les gars! Je ne joue pas sur Linux ni sur Wine, mais j'ai eu un problème similaire: la manette de jeu était correcte pour le curseur de la souris mais pas pour la vraie souris.

Je joue sur Shadow (ordinateur distant) et quand j'ai mis le "curseur de capture" sur, le problème avait disparu. Je ne sais pas comment fonctionne exactement Wine, mais peut-être que si cette option est également disponible, vous pouvez l'essayer.

À votre santé

Merci pour l'info. Ce curseur de capture est-il défini dans bannerlord?

Merci pour l'info. Ce curseur de capture est-il défini dans bannerlord?

Je crois qu'il veut dire dans la solution de streaming. Cela pourrait valoir la peine d'essayer de tester si permettre à Wine de prendre le contrôle exclusif de la souris pourrait fonctionner.

Les seuls paramètres liés à la souris dans engine_config.txt semblent être les suivants:

invert_mouse = 0
mouse_sensitivity_coefficient = 0.5000
control_mouse_movement_y_scale = 1.5000
control_mouse_movement_max_accumulation = 40.0000
control_mouse_movement_accumulation_decay_speed = 100.0000

Sans surprise, les modifier ne semble pas aider à résoudre le problème.

Merci pour l'info. Ce curseur de capture est-il défini dans bannerlord?

Je crois qu'il veut dire dans la solution de streaming. Cela pourrait valoir la peine d'essayer de tester si permettre à Wine de prendre le contrôle exclusif de la souris pourrait fonctionner.

oui, je voulais dire exactement cela.

@ElCaconym désolé si ça n'aide pas :(

Si quelqu'un est disponible pour tester (je travaille toujours)

J'ai trouvé quelque chose qui pourrait être utile ici:
https://askubuntu.com/questions/968252/ubuntu-17-10-mouse-problem-in-wine

Si quelqu'un est disponible pour tester (je travaille toujours)
J'ai trouvé quelque chose qui pourrait être utile ici:
https://askubuntu.com/questions/968252/ubuntu-17-10-mouse-problem-in-wine

C'était à peu près l'idée que je viens de me faire. L'activation de cette option pourrait potentiellement aider,
Automatically capture the mouse in full-screen windows
comme je me souviens d'autres jeux ayant au moins des problèmes comparables avec les curseurs de souris dans Wine.

@tomhobson : déjà essayé; pas de chance.

Les messages " ici :

Nous avons commencé à utiliser GetMouseMovePointsEx pour certaines entrées de mouvement de la souris. Ce n'est peut-être pas implémenté dans WINE? Il n'est cependant pas utilisé pour les clics de souris.

L'exécution avec + rawinput, + win, + cursor, + dinput, + xinput ne semble pas produire de journaux éclairants, du moins à première vue; notamment, en cliquant, vous obtenez l'habituel:

0014:trace:cursor:X11DRV_RawButtonEvent raw button 0 (raw: 1) up
0014:trace:cursor:X11DRV_RawButtonEvent raw button 0 (raw: 1) down

(selon que vous utilisez le clic gauche ou droit)

@ElCaconym Pourriez-vous partager le journal? Le journal complet peut contenir plus d'informations qui pourraient aider à déboguer le problème :)

Bien sûr; attaché. WINEDEBUG: + err, + fixme, + rawinput, + win, + cursor, + dinput, + xinput.

Je n'utilise pas de proton, remarquez: c'est wine-staging 5.4 avec tous les patchs de staging, pas de patchs personnalisés (pas même celui référencé ci-dessus - je voulais résoudre le problème de la souris avant d'appliquer le patch vfwprintf / vswprintf), et dxvk 1.6 . Winetricks: vcrun2010, vcrun2015 et dotnet48 (seul le dernier peut être nécessaire).

J'ai lancé le jeu et pour ne pas polluer les logs, j'ai évité de bouger la souris jusqu'à ce que j'arrive à l'écran de sélection gamma. J'ai ensuite déplacé le curseur sur le bouton "Accepter" et j'ai fait un clic gauche. Ensuite, j'ai tué le jeu d'un autre terme.

Le fichier:

stderr_bannerlord.log.gz

@ElCaconym Ils

Cette fonction est utilisée dans le menu. Je serais surpris si cela n'était pas lié au problème du menu.

Utilisez-vous plusieurs moniteurs ou un seul?

Moniteur unique.

@ElCaconym Huh intéressant, il

Le deuxième clic crée une fenêtre de clip en plein écran:

0014:trace:cursor:X11DRV_RawButtonEvent raw button 0 (raw: 1) down
0014:trace:cursor:X11DRV_EnterNotify hwnd 0x10020/7000008 pos 1116,1057 detail 1
004b:trace:cursor:X11DRV_EnterNotify hwnd 0x30052/a600001 pos 1116,1057 detail 1
004b:trace:cursor:X11DRV_ButtonPress hwnd 0x30052/a600001 button 0 pos 1116,1057
004b:trace:cursor:clip_fullscreen_window win 0x30052 clipping fullscreen
004b:trace:win:WIN_CreateWindowEx (null) L"Message" ex=00000000 style=00000000 0,0 0x0 parent=0xfffffffffffffffd menu=(nil) inst=0x140000000 params=(nil)
004b:trace:win:dump_window_styles style:
004b:trace:win:dump_window_styles exstyle:
004b:trace:win:GetWindowRect hwnd 0x20094 (0,0)-(0,0)
004b:trace:win:GetWindowRect hwnd 0x20094 (0,0)-(0,0)
004b:trace:win:WINPOS_GetMinMaxInfo 106 106 / -3 -3 / 1932 1092 / 112 27
004b:trace:win:GetWindowRect hwnd 0x20094 (0,0)-(112,27)
004b:trace:win:invalidate_dce 0x20094 parent 0x10026 (0,0)-(112,27) ((0,0)-(0,0))
004b:trace:win:invalidate_dce 0x70058: hwnd 0x30052 dcx 00000012 Cache 
004b:trace:win:invalidate_dce 0x1005a: hwnd 0x30052 dcx 00000013 Cache 
004b:trace:win:invalidate_dce 0x12004c: hwnd 0x10020 dcx 00000013 Cache 
004b:trace:win:invalidate_dce 0x33004a: hwnd 0x10020 dcx 00000013 Cache InUse
004b:trace:win:invalidate_dce 0x40041: hwnd 0x10020 dcx 00000013 Cache InUse
004b:trace:win:set_window_pos win 0x20094 surface (nil) -> (nil)
004b:trace:win:WIN_CreateWindowEx hwnd 0x20094 cs 0,0 0x0 (0,0)-(112,27)
004b:trace:win:GetWindowRect hwnd 0x20094 (0,0)-(112,27)
004b:trace:win:invalidate_dce 0x20094 parent 0x10026 (0,0)-(112,27) ((0,0)-(112,27))
004b:trace:win:invalidate_dce 0x70058: hwnd 0x30052 dcx 00000012 Cache 
004b:trace:win:invalidate_dce 0x1005a: hwnd 0x30052 dcx 00000013 Cache 
004b:trace:win:invalidate_dce 0x12004c: hwnd 0x10020 dcx 00000013 Cache 
004b:trace:win:invalidate_dce 0x33004a: hwnd 0x10020 dcx 00000013 Cache InUse
004b:trace:win:invalidate_dce 0x40041: hwnd 0x10020 dcx 00000013 Cache InUse
004b:trace:win:set_window_pos win 0x20094 surface (nil) -> (nil)
004b:trace:win:WIN_CreateWindowEx created window 0x20094
004b:trace:cursor:X11DRV_XInput2_Enable XInput2 v2.1 available
004b:trace:cursor:grab_clipping_window clipping to (0,0)-(1920,1080) win 7000001
0014:trace:cursor:clip_cursor_notify clip hwnd changed from (nil) to 0x20094
004b:trace:cursor:X11DRV_EnterNotify hwnd 0x30052/a600001 pos 1116,1057 detail 2
004b:trace:cursor:X11DRV_EnterNotify pos 1116,1057 old serial 24052, ignoring
004b:trace:win:WINPOS_WindowFromPoint scope 0x10020 (1116,1057) returning 0x30052
004b:trace:cursor:SetCursor 0x20070
004b:trace:win:WINPOS_WindowFromPoint scope 0x10020 (1116,1057) returning 0x30052
004b:trace:win:GetWindowRect hwnd 0x30052 (0,0)-(1920,1080)
004b:trace:cursor:ClipCursor Clipping to (null)

Avec ce patch, les clics de souris sont toujours ignorés. Et j'obtiens toujours régulièrement la séquence suivante:

004b:trace:cursor:ClipCursor Clipping to (null)
004b:trace:cursor:ungrab_clipping_window no longer clipping

... ce qui m'a fait douter au début que le patch était correctement appliqué, j'ai donc recompilé wine entièrement à partir de zéro (au lieu d'utiliser mon répertoire de compilation précédent), et utilisé un autre préfixe (préfixe d'installation autotools je veux dire, pas un préfixe wine) juste dans cas aussi. Les journaux en question persistent - mais on peut s'y attendre?

Ah d'accord, ça a du sens. C'était un peu un haha ​​long.

Au cas où, pourriez-vous essayer le vin seul, au lieu de la mise en scène du vin? Wine-staging a un patch rawinput qui empêche de cliquer sur des jeux comme Mass Effect: Andromeda. Sinon, vous pouvez simplement recompiler wine-staging sans le patch rawinput.

Je tire juste des choses d'un chapeau ici, cela pourrait très bien ne pas fonctionner non plus.

Essayé avec du vin sans aucun patch de mise en scène: aucun changement. Les journaux changent un peu bien sûr; par exemple, j'obtiens maintenant:

004c:trace:cursor:X11DRV_ButtonPress hwnd 0x3003a/a000001 button 2 pos 163,1067

... sur des clics de souris au lieu des lignes X11DRV_RawButtonEvent précédentes, mais au-delà, les clics sont toujours ignorés. Ce nouveau test n'incluait pas votre patch ci-dessus, remarquez (essayez cela maintenant juste au cas où).

Je tire juste des choses d'un chapeau ici, cela pourrait très bien ne pas fonctionner non plus.

Bien sûr - merci d'essayer! :-)

Peut-être que ce correctif pourrait effectivement avoir un effet, car je pense que le problème ne réside pas dans la détection de l'entrée, mais plutôt avec un problème avec l'emplacement du curseur et l'emplacement du curseur.

Si tel est le cas, le jeu doit penser que le pointeur est verrouillé dans une position très spécifique (coin supérieur gauche peut-être?) Car le jeu ne semble pas du tout réagir, peu importe où vous déplacez le pointeur. Certains autres jeux produisent des problèmes dans Wine où le pointeur est affiché dans un endroit différent de celui où le jeu pense qu'il se trouve, mais il existe toujours une corrélation entre l'endroit où le jeu pense qu'il se trouve et où il se trouve réellement; par exemple, il peut être décalé de quelques dizaines de pixels ou quelque chose comme ça.

Le pointeur "réel" semble être là où vous l'avez laissé lors de votre dernière utilisation de la manette de jeu. Si vous passez de la manette de jeu à la souris et revenez à la manette de jeu, le curseur saute à l'emplacement où il était le dernier lorsque vous avez utilisé la manette de jeu.

Si vous déplacez le curseur sur un bouton avec la manette de jeu, puis cliquez avec la souris, est-ce qu'il s'enregistre?

Essayé avec du vin de vanille (pas de patchs de mise en scène) le patch de _and_ qsniyg et aucun changement.

@ Krypton-Nova: Je ne peux pas personnellement tester ça, pas de manette de jeu. Bien que j'imagine s'il y avait un outil qui pourrait être utilisé pour simuler une manette de jeu virtuelle et la mapper à la souris / clavier (l'inverse de quelque chose comme cet outil ), cela pourrait fonctionner comme un contournement du problème de la souris.

Edit: peut-être MoltenGamepad ?

J'ai une manette de jeu et cela a fonctionné pour moi. Juste curieux de savoir si c'est le cas pour les autres :)

@ Krypton-Nova Oui, je peux confirmer que déplacer le curseur avec la manette de jeu et cliquer avec la souris fonctionne en fait. Semble suggérer que le problème est lié au suivi de la souris lors du déplacement de la souris, et non au clic de la souris.

La souris seule fonctionne également tout en contrôlant le personnage. Le jeu peut détecter le _motion_ de la souris, mais la _position_ du curseur ne se met pas à jour - une formation de base en physique suggère que ce problème est insoluble . Steam a une capture de souris intégrée, je crois, je peux essayer quand je sors du travail si personne n'y arrive.

Sur cette base, et sans manette de jeu branchée, j'ai ajouté la journalisation du deuxième paramètre passé par le jeu à GetMouseMovePointsEx ( lppt ) et il met à jour:

0084:fixme:win:GetMouseMovePointsEx GetMouseMovePointsEx lppt: [736][694]

Et plus bas, sur le même écran:

0084:fixme:win:GetMouseMovePointsEx GetMouseMovePointsEx lppt: [1042][656]

Cela suggère que le jeu sait où se trouve le curseur à un certain niveau; rend encore plus étrange que déplacer le curseur avec une manette de jeu fonctionne mais avec une souris, ce n'est pas le cas.

Peut-être que la fonction GetMouseMovePointsEx est utilisée pour le lissage de la souris et a besoin de quelques points supplémentaires renvoyés pour l'interpolation?
Le hack de @qsniyg n'a retourné qu'un seul point, quelqu'un devrait essayer avec deux points ou plus.

Je ne peux même pas accéder au jeu dans le menu principal, je plante juste quand je frappe l'écran de chargement.

Je ne peux même pas accéder au jeu dans le menu principal, je plante juste quand je frappe l'écran de chargement.

Même. J'ai essayé toutes les différentes versions de Proton et quelques versions de GloriousEggroll.

Je suppose que je suis curieux de savoir ce que fait exactement Bannerlord avec le résultat. Mon intuition est que - comme avec le bogue OpenTk - le spam de journal GetMouseMovePointsEx est un hareng rouge, et quel que soit le code qui gère la réponse (qu'il s'agisse d'un échec ou de points réels retournés), il s'arrête silencieusement. Difficile à dire sans voir le code source de Bannerlord, cependant.

Peut-être que la fonction GetMouseMovePointsEx est utilisée pour le lissage de la souris et a besoin de quelques points supplémentaires renvoyés pour l'interpolation?
Le hack de @qsniyg n'a retourné qu'un seul point, quelqu'un devrait essayer avec deux points ou plus.

Ajouter un deuxième point (peut-être un double du premier) semble faisable. Je vais faire un tourbillon sur ma copie locale. Quelque chose comme ça:

/***********************************************************************
 * GetMouseMovePointsEx [USER32]
 *
 * RETURNS
 *     Success: count of point set in the buffer
 *     Failure: -1
 */
int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOINT ptout, int count, DWORD res) {

    if((size != sizeof(MOUSEMOVEPOINT)) || (count < 0) || (count > 64)) {
        SetLastError(ERROR_INVALID_PARAMETER);
        return -1;
    }

    if(!ptin || (!ptout && count)) {
        SetLastError(ERROR_NOACCESS);
        return -1;
    }

    FIXME("(%d %p %p %d %d) hack\n", size, ptin, ptout, count, res);
    FIXME("    Input: %d %d\n", ptin->x, ptin->y);

    if (count > 0) {
        POINT pos;
        GetCursorPos(&pos);

        ptout[0].x = pos.x;
        ptout[0].y = pos.y;
        ptout[0].time = GetTickCount();
        ptout[0].dwExtraInfo = 0;
        FIXME("    Output 0: %d %d\n", pos.x, pos.y);

        if (count > 1) {
            ptout[1].x = pos.x;
            ptout[1].y = pos.y;
            ptout[1].time = GetTickCount();
            ptout[1].dwExtraInfo = 0;
            FIXME("    Output 1: %d %d\n", pos.x, pos.y);
            return 2;
        }

        return 1;
    }

    SetLastError(ERROR_POINT_NOT_FOUND);
    return -1;
}

Je ne peux même pas accéder au jeu dans le menu principal, je plante juste quand je frappe l'écran de chargement.

@giantrat , @NovenTheHero : Pouvez-vous tous ajouter PROTON_LOG=1 à vos options de lancement (par exemple PROTON_LOG=1 %command% ) et fournir le résultat ~/steam-261550.log (de préférence sous forme de lien vers, par exemple, Pastebin ou Github Essentiel)?

Ici vous allez: Gist

@NovenTheHero supprimez votre préfixe de vin, puis suivez ces étapes:

  1. Renommez Bannerlord.exe et Bannerlord_BE.exe en ManagedStarter.exe et ManagedStarter_BE.exe
  2. exécuter protontricks 261550 vcrun2015
  3. exécuter protontricks 261550 vcrun2017
  4. Ajouter des remplacements natifs pour ucrtbase et api-ms-win-crt-private-l1-1-0 via winecfg
  5. Exécutez ces commandes:
    cd /home/$USER/.steam/steam/steamapps/compatdata/261550/pfx/drive_c/windows/system32/
    wget "https://aka.ms/vs/16/release/vc_redist.x64.exe"
    cabextract vc_redist.x64.exe
    cabextract a10
  6. Démarrez le jeu et utilisez un contrôleur pour les menus. Cela devrait être suffisant pour vous lancer dans des batailles personnalisées et démarrer la campagne, même si vous rencontrerez probablement des problèmes d'entrée et un gel lors de l'enregistrement.

@NovenTheHero Si vous ne contournez pas déjà le lanceur, essayez de le faire (par exemple cd "~/.steam/steam/steamapps/common/Mount & Blade II Bannerlord/bin/Win64_Shipping_Client" && mv TaleWorlds.MountAndBlade.Launcher.exe TaleWorlds.MountAndBlade.Launcher.exe.old && cp Bannerlord.exe TaleWorlds.MountAndBlade.Launcher.exe ). Alternativement (si le lanceur fonctionne pour vous et que vous souhaitez l'utiliser), essayez simplement de copier Bannerlord.exe vers ManagedStarter.exe .

Cette erreur ManagedStarter est due au fait que TaleWorlds a changé le nom de l'EXE sans nécessairement recompiler (si je comprends bien depuis que j'ai lu cela sur les forums).

steam-261550.log
vous voilà, merci pour cette option de lancement au fait!

@giantrat On dirait que vous avez juste besoin soit de construire un Wine / Proton personnalisé avec le patch de qsniyg plus haut, soit de suivre les étapes de remplacement natif (voir le commentaire de @tkamat ci-dessus).

La dernière mise à jour (e1.0.1) semble avoir résolu le problème du lanceur pour moi. Malheureusement, même après avoir suivi toutes les étapes mentionnées, je ne parviens même pas à faire fonctionner le contrôleur (j'ai un contrôleur de vapeur, pas typique, est-ce possible?)

J'ai aussi juste essayé mon Steam Controller et cela n'a pas fonctionné. Je pense que c'est parce que le Steam Controller imite une souris.

bien avec le commentaire de tkamat, le lanceur fonctionne maintenant, mais je plante toujours après l'intro de taleworlds.

NVM, je dois étalonner la luminosité après l'avoir réexécuté! Pog.

@NovenTheHero assurez-vous que le joystick gauche de votre manette est configuré pour le mouvement du joystick, PAS le mouvement de la souris. Cela devrait faire l'affaire.

oh pas d'entrée de la souris sur l'écran de luminosité, se sent mal. essaiera les scripts ci-dessus.

@tkamat en supposant que vous faites référence au contrôleur de vapeur, tous les axes sont configurés comme un mouvement de joystick, aucun ne fonctionne actuellement ... J'ai également essayé tous les axes fous possibles sur un joystick HOTAS sans résultat.

L'ajout d'un deuxième point identique à la sortie de GetMouseMovePointsEx n'a eu aucun effet. Il est également évident (conformément aux découvertes de

Théorie sauvage.

OpenTK, que je suppose être une bibliothèque que TaleWorlds utilise pour l'interface graphique, ne prend pas en charge le DPI élevé. Il s'agit d'un problème SLD2, également utilisé par winebus.sys, qui est l'interface HID à l'intérieur de wine. Je pense que le DPI par défaut élevé surcharge le SLD2 / winebus en entrée et il ne peut pas rattraper son retard. Il est donc possible que si nous pouvons changer le DPI de la souris dans la configuration en quelque chose de plus bas, le jeu reprendra le mouvement de la souris.

Sur une autre note, exécuter hid_test.exe (trouvé dans test.winehq.org) dans cmd dans le préfixe wine pour Bannerlord montre qu'il y a une souris Wine HID détectée, et mon récepteur sans fil, mais rien d'autre. Cela pourrait simplement être de mon côté en raison des règles udev, mais je me demande si, encore une fois, en raison de mon incapacité à changer le DPI de ma souris par défaut (Damn you Asus! Make a linux config tool already!) Ensuite, encore une fois, SLD2 est en cours surchargé d'informations. Ou ne le capte pas.

J'ai fait fonctionner la sélection de luminosité!
@YellowApple était proche, il était juste important que les deux points diffèrent.

int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOINT ptout, int count, DWORD res) {

    if((size != sizeof(MOUSEMOVEPOINT)) || (count < 0) || (count > 64)) {
        SetLastError(ERROR_INVALID_PARAMETER);
        return -1;
    }

    if(!ptin || (!ptout && count)) {
        SetLastError(ERROR_NOACCESS);
        return -1;
    }

    FIXME("(%d %p %p %d %d) stub\n", size, ptin, ptout, count, res);

    static LPMOUSEMOVEPOINT prev;

    if (count > 0) {
        POINT pos;
        GetCursorPos(&pos);

        ptout[0].x = pos.x;
        ptout[0].y = pos.y;
        ptout[0].time = GetTickCount();
        ptout[0].dwExtraInfo = 0;
        FIXME("    Output 0: %d %d\n", pos.x, pos.y);

        if (count > 1) {
            ptout[1].x = pos.x + 1;
            ptout[1].y = pos.y + 1;
            ptout[1].time = GetTickCount();
            ptout[1].dwExtraInfo = 0;
            FIXME("    Output 1: %d %d\n", pos.x + 1, pos.y + 1);
            return 2;
        }
        return 1;
    }

    SetLastError(ERROR_POINT_NOT_FOUND);
    return -1;
}

(ou peut-être que c'était le patch qui a été publié il y a quelques heures, je ne suis pas sûr d'avoir testé avant de changer le code)

EDIT: Ce n'était pas dû au patch, ce code l'a en effet corrigé

Sucré! Reconstruire avec ça maintenant.

Obtenir quelques plantages étranges, mais a réussi à terminer un combat 1v1 contre l'IA, donc cela semble prometteur.

Jusqu'ici tout va bien avec cet ajustement. A été capable de jouer avec les menus, de créer un personnage, de sauter le didacticiel, de retourner dans le camp d'entraînement et de terminer tous les objectifs d'entraînement avec toutes les armes. Le seul problème que j'ai remarqué jusqu'à présent est que la rotation de la carte avec le bouton droit de la souris ne fonctionne que dans une direction (c'est-à-dire, comme un Zoolander inversé, la carte ne tournera qu'à gauche, lol).

Je pense que le seul ennui restant ici est le long blocage lors de l'enregistrement, et je n'ai malheureusement aucune piste pour déterminer ce qui cause cela, malheureusement.

Jusqu'ici tout va bien avec cet ajustement. A été capable de jouer avec les menus, de créer un personnage, de sauter le didacticiel, de retourner dans le camp d'entraînement et de terminer tous les objectifs d'entraînement avec toutes les armes. Le seul problème que j'ai remarqué jusqu'à présent est que la rotation de la carte avec le bouton droit de la souris ne fonctionne que dans une direction (c'est-à-dire, comme Zoolander, la carte refuse de tourner à gauche, lol).

Je pense que le seul ennui restant ici est le long blocage lors de l'enregistrement, et je n'ai malheureusement aucune piste pour déterminer ce qui cause cela, malheureusement.

La souris fonctionne-t-elle maintenant ou utilisez-vous toujours une manette de jeu?

Quelqu'un a déjà rencontré ce problème?

Assertion: should not be reached at /vagrant/mono/mono/utils/mono-threads.c:1066

Le jeu continue de me figer juste après la création du personnage avec cela comme seul indice avant que je ne sois obligé de le tuer.

La souris fonctionne-t-elle maintenant ou utilisez-vous toujours une manette de jeu?

: souris: la manette de jeu n'est même pas branchée.

@YellowApple , vous pouvez essayer de stocker le point de l'appel précédent de la fonction dans une variable statique, puis le passer comme point à l'index 1. J'ai l'impression qu'ils utilisent les deux points pour calculer une sorte de delta de la souris.
Je vais dormir maintenant.

Cela vaut vraiment le coup. Je vais mettre ce code et voir si je peux créer quelque chose dans ce sens. La solution à long terme serait finalement d'avoir un tampon statique de jusqu'à 64 d'entre eux et de les parcourir en continu (c'est-à-dire: implémenter complètement l'appel API au lieu de l'approche actuelle hackée ensemble, lol).

Cela me rappelle un problème, l'année dernière (a été corrigé dans le jeu depuis), Naval Action avait des problèmes dans le proton où il ne détectait pas le placement du curseur après avoir changé le contexte d'analyse de la souris (de mouselook à un menu), et si vous aviez le menu ouvert, alt-tab'd aller et retour, il le détecterait et le menu fonctionnerait. Cela semble simple, mais quelqu'un a-t-il essayé?

Je n'avais pas pensé essayer l'alt-tabbing, mais j'ai juste essayé et cela n'a malheureusement rien fait pour moi. :désappointé:

Quelqu'un sait-il si cette erreur de vagabondage mono qui me gèle est liée à Steam ou à Mount and Blade?

@YellowApple Voulez-vous expliquer comment et où vous avez patché ce code dans wine? Je suis très novice dans la compilation de wine (mais je m'intéresse à faire fonctionner divers jeux sous Linux depuis des années maintenant) et je ne parviens pas tout à fait à ce qu'il soit censé aller. J'ai demandé à un de mes amis de passer à plein temps à Linux il y a quelques semaines et elle avait vraiment hâte de voir ce jeu, donc ce serait super si je pouvais le faire fonctionner pour elle. Je ne pense pas qu'elle retournera bientôt à Windows, mais je ne veux pas non plus qu'elle soit déçue de ne pas pouvoir jouer au seul jeu qu'elle attendait avec impatience.

Le changement de version de proton a commencé à télécharger à partir de 0% et à supprimer le téléchargement de 31 Go deux fois de suite, j'ai presque eu une crise cardiaque.

D'accord, j'ai même du mal à le garder sur le disque car Steam le supprime à chaque fois que je l'installe complètement. Je suis triste.

J'adore la brillante collaboration qui se déroule ici et cela m'empêche de la rembourser sur Steam. Je ne suis pas très doué en technologie, mais je peux voir qu'il y a des progrès en cours ici. Avec les choses simples ci-dessus, je suis capable de faire presque tout le processus de création de personnage avant que le jeu ne se verrouille, ce qui me fait redémarrer physiquement mon ordinateur, mais vous me donnez tous de l'espoir =).

Pour le blocage de la sauvegarde, nous devrons peut-être impliquer les Codeweavers (essentiellement les principaux responsables de Wine). Espérons qu'ils remarquent à quel point ce jeu est populaire et qu'ils y travaillent. Même si le support de la souris fonctionne, le blocage de sauvegarde est toujours une raison pour que ce jeu soit classé Garbage.

Le contrôleur n'aidait pas, ne pouvait toujours pas démarrer le jeu, je suppose que j'attends un jour.

@giantrat Avez-vous essayé les

@coltondrg Le fichier source en question est dlls/user32/input.c . Vous voudriez trouver la définition de fonction pour GetMouseMovePointsEx et la remplacer par ce qui suit:

(cliquez pour afficher)

/***********************************************************************
 * GetMouseMovePointsEx [USER32]
 *
 * RETURNS
 *     Success: count of point set in the buffer
 *     Failure: -1
 */
int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOINT ptout, int count, DWORD res) {

    if((size != sizeof(MOUSEMOVEPOINT)) || (count < 0) || (count > 64)) {
        SetLastError(ERROR_INVALID_PARAMETER);
        return -1;
    }

    if(!ptin || (!ptout && count)) {
        SetLastError(ERROR_NOACCESS);
        return -1;
    }

    FIXME("(%d %p %p %d %d) hack\n", size, ptin, ptout, count, res);
    FIXME("    Input: %d %d\n", ptin->x, ptin->y);

    if (count > 0) {
        POINT pos;
        GetCursorPos(&pos);

        ptout[0].x = pos.x;
        ptout[0].y = pos.y;
        ptout[0].time = GetTickCount();
        ptout[0].dwExtraInfo = 0;
        FIXME("    Output 0: %d %d\n", pos.x, pos.y);

        if (count > 1) {
            ptout[1].x = pos.x + 1;
            ptout[1].y = pos.y + 1;
            ptout[1].time = GetTickCount();
            ptout[1].dwExtraInfo = 0;
            FIXME("    Output 1: %d %d\n", pos.x, pos.y);
            return 2;
        }

        return 1;
    }

    SetLastError(ERROR_POINT_NOT_FOUND);
    return -1;
}

Si vous construisez la même version de Wine que celle utilisée par Proton, vous pouvez à la place enregistrer ce qui suit dans un fichier (par exemple, butterlord.patch ), cd dans l'arborescence des sources de Wine et exécuter git apply path/to/butterlord.patch (cela inclut également les correctifs pour corriger le plantage post-création de personnage):

(cliquez pour afficher)

diff --git a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
index 668b8c02fb..58f23257e0 100644
--- a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
@@ -150,7 +150,8 @@
 @ stub _o___stdio_common_vfprintf_p
 @ stub _o___stdio_common_vfprintf_s
 @ stub _o___stdio_common_vfscanf
-@ stub _o___stdio_common_vfwprintf
+# PATCHED:
+@ cdecl _o___stdio_common_vfwprintf(int64 ptr wstr ptr ptr) ucrtbase._o___stdio_common_vfwprintf
 @ stub _o___stdio_common_vfwprintf_p
 @ stub _o___stdio_common_vfwprintf_s
 @ stub _o___stdio_common_vfwscanf
@@ -160,7 +161,8 @@
 @ stub _o___stdio_common_vsprintf_p
 @ cdecl _o___stdio_common_vsprintf_s(int64 ptr long str ptr ptr) ucrtbase._o___stdio_common_vsprintf_s
 @ stub _o___stdio_common_vsscanf
-@ stub _o___stdio_common_vswprintf
+# PATCHED:
+@ cdecl _o___stdio_common_vswprintf(int64 wstr long wstr ptr ptr) ucrtbase._o___stdio_common_vswprintf
 @ stub _o___stdio_common_vswprintf_p
 @ stub _o___stdio_common_vswprintf_s
 @ stub _o___stdio_common_vswscanf
diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec
index 2251f9f56a..281e2e7c9e 100644
--- a/dlls/ucrtbase/ucrtbase.spec
+++ b/dlls/ucrtbase/ucrtbase.spec
@@ -814,7 +814,8 @@
 @ stub _o___stdio_common_vfprintf_p
 @ stub _o___stdio_common_vfprintf_s
 @ stub _o___stdio_common_vfscanf
-@ stub _o___stdio_common_vfwprintf
+# PATCHED:
+@ cdecl _o___stdio_common_vfwprintf(int64 ptr wstr ptr ptr) MSVCRT__stdio_common_vfwprintf
 @ stub _o___stdio_common_vfwprintf_p
 @ stub _o___stdio_common_vfwprintf_s
 @ stub _o___stdio_common_vfwscanf
@@ -824,7 +825,8 @@
 @ stub _o___stdio_common_vsprintf_p
 @ cdecl _o___stdio_common_vsprintf_s(int64 ptr long str ptr ptr) MSVCRT__stdio_common_vsprintf_s
 @ stub _o___stdio_common_vsscanf
-@ stub _o___stdio_common_vswprintf
+# PATCHED:
+@ cdecl _o___stdio_common_vswprintf(int64 wstr long wstr ptr ptr) MSVCRT__stdio_common_vswprintf
 @ stub _o___stdio_common_vswprintf_p
 @ stub _o___stdio_common_vswprintf_s
 @ stub _o___stdio_common_vswscanf
diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index 46f78cbce8..40ed0f4692 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -1280,7 +1280,30 @@ int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOI
         return -1;
     }

-    FIXME("(%d %p %p %d %d) stub\n", size, ptin, ptout, count, res);
+    FIXME("(%d %p %p %d %d) hack\n", size, ptin, ptout, count, res);
+    FIXME("    Input: %d %d\n", ptin->x, ptin->y);
+
+    if (count > 0) {
+        POINT pos;
+        GetCursorPos(&pos);
+
+        ptout[0].x = pos.x;
+        ptout[0].y = pos.y;
+        ptout[0].time = GetTickCount();
+        ptout[0].dwExtraInfo = 0;
+        FIXME("    Output 0: %d %d\n", pos.x, pos.y);
+
+        if (count > 1) {
+            ptout[1].x = pos.x + 1;
+            ptout[1].y = pos.y + 1;
+            ptout[1].time = GetTickCount();
+            ptout[1].dwExtraInfo = 0;
+            FIXME("    Output 1: %d %d\n", pos.x, pos.y);
+            return 2;
+        }
+        
+        return 1;
+    }

     SetLastError(ERROR_POINT_NOT_FOUND);
     return -1;

Cela corrigera votre Wine de manière à ce qu'il soit exactement identique à ce que j'utilise.

@giantrat Avez-vous essayé les

oui, et maintenant je reçois le foutu crash de l'écran de chargement, même après avoir appliqué ce qui l'a aidé la dernière fois.

@YellowApple Vous êtes incroyable. Le fichier de correctif que vous avez collé inclut également les correctifs précédents pour le plantage, non? (peu importe, je peux lire) J'avais déjà réussi à faire une construction avec ces correctifs mais le jeu ne détectait pas le contrôleur sur mon ordinateur, donc je n'ai pas vraiment pu aller assez loin pour voir si cela était réellement efficace. De plus, je ne suis pas sûr que cela fasse une différence, mais j'ai compilé mes versions en utilisant le script proton-tkg (de wine-tkg-git) afin que je puisse simplement faire glisser des fichiers de patch personnalisés et que le script crache un belle Proton pour moi de faire glisser dans Compatibilitytools.d. Je suppose que cela signifie que ma construction a également tous les correctifs tkg, qui, j'espère, ne sont pas en conflit ou susceptibles de casser autre chose.

Je voulais juste mettre à jour, après avoir appliqué le patch de @YellowApple ci-dessus, le jeu fonctionne maintenant pleinement pour moi, y compris les entrées de souris! La première sauvegarde de campagne a gelé le jeu pendant quelques minutes, et il a fini par planter à la fin, mais après la réouverture du jeu, la sauvegarde s'est chargée avec succès. Les sauvegardes suivantes font geler le jeu pendant quelques secondes, mais elles ne plantent pas, donc je suis toujours capable de jouer assez facilement! J'ai un Ryzen 2600, un RX 580 et un SSD sata, donc de jolies spécifications de milieu de gamme, ce qui est également encourageant. Merci beaucoup à tous ceux qui dans ce fil ont contribué à la solution, et n'hésitez pas à me demander autre chose :). J'espère que cela peut être poussé vers le vin en amont afin que nous n'ayons pas à nous construire.

EDIT: Donc, après avoir joué environ une heure de la campagne, il semble qu'il pourrait y avoir une fuite de mémoire, car le jeu continue à utiliser de plus en plus de RAM alors que les performances commencent à se dégrader. Cela peut très bien être un problème avec le jeu lui-même, étant donné que j'ai vu certains utilisateurs de Windows se plaindre également de problèmes de performances. J'ai 8 Go de RAM, il pourrait donc être intéressant de voir si cela arrive aux personnes avec plus de RAM.

Et voici la version légèrement améliorée de GetMouseMovePointsEx , qui corrige le bogue de rotation inversée des cartes Zoolander et - bien que toujours en proie au piratage - est probablement Good Enough ™ pour envoyer en amont:

(cliquez pour afficher)

/***********************************************************************
 * GetMouseMovePointsEx [USER32]
 *
 * RETURNS
 *     Success: count of point set in the buffer
 *     Failure: -1
 */
int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOINT ptout, int count, DWORD res) {
    static INT last_x = 0;
    static INT last_y = 0;

    if((size != sizeof(MOUSEMOVEPOINT)) || (count < 0) || (count > 64)) {
        SetLastError(ERROR_INVALID_PARAMETER);
        return -1;
    }

    if(!ptin || (!ptout && count)) {
        SetLastError(ERROR_NOACCESS);
        return -1;
    }

    if (count > 0) {
        POINT pos;
        INT out_count = 1;
        GetCursorPos(&pos);

        ptout[0].x = pos.x;
        ptout[0].y = pos.y;
        ptout[0].time = GetTickCount();
        ptout[0].dwExtraInfo = 0;

        if (count > 1) {
            ptout[1].x = last_x;
            ptout[1].y = last_y;
            ptout[1].time = GetTickCount();
            ptout[1].dwExtraInfo = 0;
            out_count = 2;
        }

        last_x = pos.x;
        last_y = pos.y;

        return out_count;
    }

    SetLastError(ERROR_POINT_NOT_FOUND);
    return -1;
}

@qsniyg : Voulez-vous faire les honneurs et le soumettre?

Je n'ai pas le jeu actuellement, donc je ne peux pas tester, mais est-ce que quelqu'un a une sortie de journal de crash pour le blocage de sauvegarde? Cela ressemble presque à ce problème que nous avons eu avec les autorisations de fichiers.

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

Je n'ai pas le jeu actuellement, donc je ne peux pas tester, mais est-ce que quelqu'un a une sortie de journal de crash pour le blocage de sauvegarde? Cela ressemble presque à ce problème que nous avons eu avec les autorisations de fichiers.

Je doute quelque peu que ce soit un problème d'autorisations. Le jeu parvient à enregistrer mais cela prend environ 5 à 10 minutes pour enregistrer et se bloque jusqu'à ce que ce soit terminé. Ce ne serait pas un spectacle pour moi de jouer, sauf que la sauvegarde automatique se déclenche à chaque fois que vous commencez une bataille et sur la plupart des autres grands changements de scène

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

L'approche la plus conviviale "pour les idiots":

  • Téléchargez la version exacte de Proton que j'utilise: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz
  • Collez-le dans ~/.steam/root/compatibilitytools.d
  • Extrayez-le ( cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz )
  • Redémarrez Steam
  • Cliquez avec le bouton droit sur Bannerlord dans votre bibliothèque, cliquez sur Propriétés et changez la version de Proton en "proton_5.0-local"
  • ???
  • Profit

Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

À tout le moins, tant que ces correctifs ne cassent pas d'autres choses, peuvent-ils être placés dans les versions tierces populaires de Proton telles que tkg ou GE pour le moment? : 3 @GloriousEggroll?

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

L'approche la plus conviviale "pour les idiots":

* Download the exact Proton build I'm using: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz

* Stick it in `~/.steam/root/compatibilitytools.d`

* Extract it (`cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz`)

* Restart Steam

* Right-click Bannerlord in your library, click Properties, and change the Proton version to "proton_5.0-local"

* ???

* Profit

Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

Le problème est que lorsque je change de version proton, tout Bannerlord est supprimé et recommence à télécharger. 😤

Cela ne devrait pas arriver, cela devrait supprimer le dossier compatdata si vous rétrogradez Proton mais cela ne devrait jamais supprimer le jeu entier. Dans tous les cas, vous devriez pouvoir contourner le téléchargement en sauvegardant les fichiers du jeu et en les restaurant après avoir changé la version de Proton. Vous pouvez accomplir cela en faisant littéralement une copie du dossier d'installation du jeu ou dans Steam> Jeux de sauvegarde et de restauration

Le retard lors de la sauvegarde du jeu est brutal. Je peux confirmer qu'il conduit l'utilisation du processeur à 100% sur les 12 processeurs logiques de mon système pendant plusieurs secondes (jusqu'à environ 1 minute pour moi). Le disque R / W pendant ce temps est faible / inexistant, il semble donc tourner sur autre chose. Je ne vois rien imprimé sur la console lorsque j'exécute Steam à partir de celle-ci pendant que cela se passe .. existe-t-il un autre moyen d'activer plus de journalisation à partir de proton / wine qui pourrait aider à diagnostiquer le problème ici?

Construction d'une version corrigée de GE Proton. Fera un rapport si cela fonctionne avec le correctif publié ici :)

@YellowApple

Quels correctifs avez-vous appliqués exactement?
Appliquer le patch git à partir de votre message est suffisant? (Je suis toujours en train de télécharger Bannerlord, donc je n'ai pas encore pu le tester)

Avons-nous encore besoin de contourner le lanceur avec ce patch?

Pomme jaune

Quels correctifs avez-vous appliqués exactement?
Appliquer le patch git à partir de votre message est suffisant? (Je suis toujours en train de télécharger Bannerlord, donc je n'ai pas encore pu le tester)

Avons-nous encore besoin de contourner le lanceur avec ce patch?

@elovin

Il semble que le problème de démarrage géré a été résolu maintenant avec le correctif le plus récent. Donc non.

Dans les deux cas, le contournement du lanceur n'était pas nécessaire. Si vous renommiez Bannerlord.exe en ManagedStarter.exe, le lanceur fonctionnerait correctement.

@YellowApple @tomhobson
Je peux appliquer le patch à wine stable mais pas à wine master car il y a maintenant un patch en conflit (cela semble être votre patch mais avec un ordre d'arguments différent?) ,
votre patch était-il déjà fusionné?

ÉDITER:
ok le patch d'entrée est toujours nécessaire.

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

L'approche la plus conviviale "pour les idiots":

* Download the exact Proton build I'm using: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz

* Stick it in `~/.steam/root/compatibilitytools.d`

* Extract it (`cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz`)

* Restart Steam

* Right-click Bannerlord in your library, click Properties, and change the Proton version to "proton_5.0-local"

* ???

* Profit

Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

Cela fonctionne pour mon manjaro.

Salut à tous,

J'ai attendu si longtemps ce match. Ce jeu est-il jouable maintenant?

@YellowApple pourriez -vous créer un guide "comment faire fonctionner le jeu à partir de zéro pour les idiots"?

L'approche la plus conviviale "pour les idiots":

* Download the exact Proton build I'm using: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz

* Stick it in `~/.steam/root/compatibilitytools.d`

* Extract it (`cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz`)

* Restart Steam

* Right-click Bannerlord in your library, click Properties, and change the Proton version to "proton_5.0-local"

* ???

* Profit

Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

J'espère que nous pourrons obtenir ces correctifs en amont le plus tôt possible afin d'éviter le besoin de ces versions personnalisées uniques de rinky-dink, lol

Fonctionne sur Mint 19.2. Le seul problème qui semble subsister pour le moment est le temps brutal (généralement une minute pour moi) qu'il faut à chaque sauvegarde du jeu.

Salut à tous,

J'ai attendu si longtemps ce match. Ce jeu est-il jouable maintenant?

@Przygi C'est jouable - mais le temps d'attente (dû à l'épargne) à la minute est diabolique. Cela devra être amélioré avant que le jeu ne soit agréable.

@ Rogue-Factor existe-t-il des options de démarrage spéciales pour une journalisation supplémentaire? Travailler pour obtenir un journal ici maintenant.

Rogue-Factor Existe-t-il des options de démarrage spéciales pour une journalisation supplémentaire? Travailler pour obtenir un journal ici maintenant.

@sdegrace

Dans Steam, si vous accédez au jeu, faites un clic droit et accédez aux propriétés.

Cliquez ensuite sur définir les options de lancement.

Entrez PROTON_LOG=1 %command%

Démarrez le jeu normalement.

Un journal apparaîtra dans votre répertoire personnel appelé steam-{appid}.log .

Remarque à tous, vous avez encore renommé les fichiers exe en plus de patcher proton!

  • Contournement du lanceur

    Quelques notes:

    the game uses Battleye Anti-Cheat - it's seemingly mandatory even if you just want to play single player. No idea if there is a launch parameter that disables it.
    

    Vous pouvez renommer deux fichiers .exe dans / Mount & Blade II Bannerlord / bin / Win64_Shipping_Client /

    rename "TaleWorlds.MountAndBlade.Launcher.exe" to "TaleWorlds.MountAndBlade.Launcher.exe_backup" (or something similar - it's just not allowed to keep its original name)
    
    rename "Bannerlord.exe" to "TaleWorlds.MountAndBlade.Launcher.exe"
    

    pour au moins faire démarrer le jeu, voir les écrans de démarrage, puis j'arrive au point où je dois interagir avec le jeu pour la première fois (modifier les paramètres de luminosité) à quel point mon processeur et mon GPU se détraquent et je ne peux pas interagir avec le jeu du tout.

  • Et puis patcher Proton

    L'approche la plus conviviale "pour les idiots":

    Download the exact Proton build I'm using: https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz
    Stick it in ~/.steam/root/compatibilitytools.d
    Extract it (cd ~/.steam/root/compatibilitytools.d && tar xvf proton_5.0-local.tar.gz)
    Restart Steam
    Right-click Bannerlord in your library, click Properties, and change the Proton version to "proton_5.0-local"
    ???
    Profit
    

    Évidemment, vous le faites à vos propres risques, sachant que le téléchargement, l'installation et l'exécution de binaires aléatoires sur Internet sont une affaire risquée et périlleuse. Caveat emptor. Vous êtes fortement encouragé à vous essayer au clonage du référentiel Proton, à appliquer les correctifs vous-même et à créer Proton sur votre propre machine (et bien que oui, ce n'est pas exactement l'approche la plus conviviale, c'est beaucoup plus sûr que de faire confiance à Internet étrangers de ne pas boire de votre crâne, lol).

Merci à tous sur ce fil :)

@SylvainSoKette

Le lanceur fonctionne très bien pour moi!
image

@tomhobson avez-vous fait quelque chose de spécifique pour le faire fonctionner, ou simplement fonctionner avec le Proton patché devrait-il fonctionner?

Merci pour tout le travail sur ce fil! Il y a eu un double démarrage depuis la sortie du jeu, mais je suis heureux que des progrès aient été accomplis ici!

Mes tests:

  • Exécution de Manjaro 19.0.2
  • Fichiers exe renommés en raison d'un problème de lanceur qui se produit toujours pour moi.
  • Suivez le guide chargez le jeu avec Proton édité.
  • Crash lors du réglage de l'audio, mais les paramètres ont été enregistrés.
  • Crash en quittant le tutoriel après la création réussie du personnage.
  • J'ai réussi à ignorer le didacticiel à la deuxième tentative et à accéder à la carte de la campagne.
  • Quelques légères baisses de performances par rapport à Windows mais fonctionnent correctement dans l'ensemble.
  • Fonction de sauvegarde testée et le jeu se bloque pendant ce temps. Le processeur dépasse à environ 90% sur mon 9700k. La sauvegarde a pris environ 35 secondes.

@tomhobson avez-vous fait quelque chose de spécifique pour le faire fonctionner, ou simplement fonctionner avec le Proton patché devrait-il fonctionner?

@kelytha J'ai utilisé le proton patché. mais j'ai renommé Bannerlord_BE.exe et Bannerlord.exe en ManagedStarter_BE.exe et ManagedStarter.exe respectivement.

Ne serait-il pas préférable d'utiliser des liens nommés ManagedStarter.exe et ManagedStarter_BE.exe, au cas où ils mettraient à jour les exécutables?

@ Le nouveau fichier journal de Rogue-Factor fait plus de 10 Go: / Je vais réessayer dans un instant.

@sdegrace, il devrait se compresser assez bien. Essayez gz'ing it

Salut à tous,
J'ai attendu si longtemps ce match. Ce jeu est-il jouable maintenant?

@Przygi C'est jouable - mais le temps d'attente (dû à l'épargne) à la minute est diabolique. Cela devra être amélioré avant que le jeu ne soit agréable.

Merci d'avoir répondu!!! Excellent travail les gars !!!

Injouable pour moi malheureusement, plante à chaque fois que je change les paramètres graphiques et plante parfois lorsqu'il a besoin de dessiner / charger une scène 3D complexe (écran de menu ou écran de création de personnage).
"Application Crash: L'application a rencontré un problème. Nous devons collecter les fichiers nécessaires pour résoudre le problème. Souhaitez-vous télécharger ces fichiers maintenant?"

La seule fois où je suis arrivé à l'écran de création de personnage, la performance était horrible.
Mais je suppose que c'est probablement un problème de pilote de mon côté, puisque je suis sur Ubuntu 18.04 sans ppa exotique ou rien installé manuellement au niveau du pilote.

Ubuntu 18.04, noyau i7 6700, 16go ddr4, gtx 1060 3go (nvidia-driver-435)

Quelque chose à noter: j'ai 2 moniteurs, l'un branché sur la carte graphique, l'autre sur la sortie de la carte mère (géré par les graphiques Intel HD). Le moniteur principal est branché sur la carte graphique nvidia et le jeu est rendu sur le moniteur principal.

Mise à jour: j'ai réussi à changer les paramètres graphiques en les changeant un par un sans plantage. Mais encore beaucoup de plantages sur l'écran de création de personnage: /

D'accord, je construis proton-tkg qui utilise le dernier wine master qui n'a besoin que de la partie input (input.c) du patch fourni par @YellowApple .
Ensuite, j'ai ajouté des liens symboliques pour que le lanceur fonctionne comme @tomhobson et @ Krypton-Nova l'ont suggéré.

Le jeu fonctionne jusqu'à présent en utilisant RADV avec ACO et la sauvegarde prend environ 15 secondes.
La modification des paramètres plante cependant le jeu (au moins les modifications apportées aux paramètres sont en cours d'enregistrement)

CPU 3700X
GPU Vega 56
RAM 32 Go
SSD samsung 860 evo 1 To

Distro:
Arch Linux

Noyau:
5.5.13-zen2-1-zen

Pilote GPU:
mesa-20.0.2

Mise à jour 2:

D'accord, après avoir exécuté le jeu pendant 1 heure, les performances sont en fait assez bonnes (par rapport à Windows), j'obtiens environ 70 fps dans l'arène et de très bons temps de trame, sur la carte du monde, il est d'environ 50-60pfs avec des pics de temps de trame à 50ms, dans la ville, il y a environ 50-60 pfs avec des temps d'image jusqu'à 10ms et pendant une bataille réelle, j'obtiens environ 60-80pfs (selon la carte) avec de bons temps d'image mais des pics occasionnels jusqu'à> 100ms (compilation de shader probablement).

Je joue sur WQHD avec des réglages sur "très haut" d'ailleurs.

Hmm ... Alors j'ai essayé de construire le patché pendant que je dormais, ça n'a pas marché. J'ai juste essayé de télécharger votre version, @YellowApple , et cela ne fonctionne pas non plus! : sob: (By ne fonctionne pas, je veux dire que ma souris ne me laisse toujours pas bouger ET cliquer sur les menus, je n'ai pas encore essayé de contrôleur)

Suis-je le seul pour qui ça n'a pas fonctionné?

Peut confirmer la même chose pour GE Proton travaillant avec le patch. Le seul problème que j'ai est que chaque deuxième lancement ou si la souris ne fonctionnera plus. Il faut redémarrer le jeu une fois de plus pour qu'il fonctionne à nouveau correctement.

@YellowApple Excellent travail !! :) Personnellement, je pense que le patch serait mieux adapté pour la mise en scène du vin que pour le vin (puis l'envoyer aux fourchettes, comme proton-ge, etc.), car wine est assez strict pour s'assurer que la fonction fonctionne aussi étroitement que possible les fenêtres.

Pour vous soumettre à wine-staging, voir ici: https://wiki.winehq.org/Wine-Staging_Development. En gros, attachez le patch à https://bugs.winehq.org/show_bug.cgi?id=36873 , expliquez pourquoi vous pensez qu'il devrait passer à wine-staging sur wine, puis à CC Alistair et Zebediah (responsables de wine-staging) pour les examiner et l'ajouter à la mise en scène du vin.

En attendant, je vais essayer de voir si je peux en implémenter une qui reflète l'implémentation de la fonction par Windows :)

@ Rogue-Factor
https://www.dropbox.com/s/e25za0261pdco0t/steam-261550.log.gz?dl=0

Dans ce journal, j'ai ouvert Bannerlord, ouvert une sauvegarde existante, sauvegardé le jeu, puis sauvegardé et quitté le jeu. Apparemment, il y a une limite supérieure au nombre de cœurs nécessaires lors de la sauvegarde - pour moi, c'est 14/16. Cela me prend un peu moins d'une minute. Aucun autre problème n'a encore été rencontré.

Le patch de YellowApple fonctionne pour moi! Je vais maintenant essayer de créer un personnage et le tutoriel.

Comme je semble être le seul pour lequel il ne fonctionne pas, je vais faire une mise à jour complète du système, puis essayer de construire à nouveau ... peut-être essayer GE proton. J'ai une idée pour un clavier très basique vers un contrôleur virtuel, donc je vais essayer si la reconstruction ne fait pas fonctionner ma souris.

@elovin Pouvez-vous lister tous les correctifs requis? Je veux essayer de construire un proton basé sur la recommandation de YellowApple. Non pas que je ne leur fasse pas confiance, mais je veux pouvoir faire ça et contribuer. Il y avait beaucoup de correctifs dans le fil, donc si cela ne vous dérange pas de lister ceux que vous avez utilisés, je vais essayer de le faire.

@elovin Pouvez-vous lister tous les correctifs requis? Je veux essayer de construire un proton basé sur la recommandation de YellowApple. Non pas que je ne leur fasse pas confiance, mais je veux pouvoir faire ça et contribuer. Il y avait beaucoup de correctifs dans le fil, donc si cela ne vous dérange pas de lister ceux que vous avez utilisés, je vais essayer de le faire.

C'est le patch qui fait fonctionner la souris. Pour le moment, nous n'avons pas d'autres correctifs

/***********************************************************************
 * GetMouseMovePointsEx [USER32]
 *
 * RETURNS
 *     Success: count of point set in the buffer
 *     Failure: -1
 */
int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOINT ptout, int count, DWORD res) {
    static INT last_x = 0;
    static INT last_y = 0;

    if((size != sizeof(MOUSEMOVEPOINT)) || (count < 0) || (count > 64)) {
        SetLastError(ERROR_INVALID_PARAMETER);
        return -1;
    }

    if(!ptin || (!ptout && count)) {
        SetLastError(ERROR_NOACCESS);
        return -1;
    }

    if (count > 0) {
        POINT pos;
        INT out_count = 1;
        GetCursorPos(&pos);

        ptout[0].x = pos.x;
        ptout[0].y = pos.y;
        ptout[0].time = GetTickCount();
        ptout[0].dwExtraInfo = 0;

        if (count > 1) {
            ptout[1].x = last_x;
            ptout[1].y = last_y;
            ptout[1].time = GetTickCount();
            ptout[1].dwExtraInfo = 0;
            out_count = 2;
        }

        last_x = pos.x;
        last_y = pos.y;

        return out_count;
    }

    SetLastError(ERROR_POINT_NOT_FOUND);
    return -1;
}

Le patch de @YellowApple fonctionne aussi pour moi, merci beaucoup.

Les temps de chargement sont encore horribles, mais le jeu semble fonctionner, du moins un peu. Ce qui peut sembler être un plantage, est parfois juste un écran de chargement qui prend une éternité lol.

Cela fonctionne très bien sur manjaro, la sauvegarde prend environ 5 à 10 secondes, mais le calcul du shader semble planter le jeu (environ 1/5 de cotes) lorsque je charge une carte pour la première fois. certains paramètres plantent, mais sont appliqués après un crash, donc c'est fin. MERCI POUR VOTRE TRAVAIL!

@elovin Pouvez-vous lister tous les correctifs requis? Je veux essayer de construire un proton basé sur la recommandation de YellowApple. Non pas que je ne leur fasse pas confiance, mais je veux pouvoir faire ça et contribuer. Il y avait beaucoup de correctifs dans le fil, donc si cela ne vous dérange pas de lister ceux que vous avez utilisés, je vais essayer de le faire.

J'ai utilisé le script de construction de proton-tkg (cloner le repo tkg PKGBUILD ) et ajouté le correctif à wine-tkg-git / wine-tkg-userpatches / bannerlord.mypatch (tkg recherchera l'extension de fichier "mypatch" donc oui vous doit en fait le nommer comme YOUR_PATCH_NAME.mypatch)

bannerlord.mypatch contient uniquement le patch pour input.c de @YellowApple et c'est le seul patch

J'ai postulé (wine git master n'a pas besoin du patch complet fourni par @YellowApple ):

diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index 46f78cbce8..40ed0f4692 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -1280,7 +1280,30 @@ int WINAPI GetMouseMovePointsEx(UINT size, LPMOUSEMOVEPOINT ptin, LPMOUSEMOVEPOI
         return -1;
     }

-    FIXME("(%d %p %p %d %d) stub\n", size, ptin, ptout, count, res);
+    FIXME("(%d %p %p %d %d) hack\n", size, ptin, ptout, count, res);
+    FIXME("    Input: %d %d\n", ptin->x, ptin->y);
+
+    if (count > 0) {
+        POINT pos;
+        GetCursorPos(&pos);
+
+        ptout[0].x = pos.x;
+        ptout[0].y = pos.y;
+        ptout[0].time = GetTickCount();
+        ptout[0].dwExtraInfo = 0;
+        FIXME("    Output 0: %d %d\n", pos.x, pos.y);
+
+        if (count > 1) {
+            ptout[1].x = pos.x + 1;
+            ptout[1].y = pos.y + 1;
+            ptout[1].time = GetTickCount();
+            ptout[1].dwExtraInfo = 0;
+            FIXME("    Output 1: %d %d\n", pos.x, pos.y);
+            return 2;
+        }
+        
+        return 1;
+    }

     SetLastError(ERROR_POINT_NOT_FOUND);
     return -1;

OK, pour les futurs intrépides, notez que la méthode @elovin a l'exigence suivante (selon la page TKG)

«Les PKGBUILD ne fonctionneront que sur les distributions avec accès à pacman et makepkg», donc cela peut ne pas convenir aux distributions basées sur Debian à moins que vous ne vouliez aller plus loin pour personnaliser cela.

Je vais essayer sans ça.

J'ai acheté le jeu et installé, et utilisé la méthode dans la description (téléchargement du proton spécial, oui, je sais, pas sécurisé, mais test), le configurer pour utiliser le nouveau -local, et je ne parviendra toujours pas au lanceur .
Je vois que d'autres personnes font fonctionner le lanceur sans renommer quoi que ce soit pour l'ignorer ... mais peut-être qu'ils ont d'autres correctifs appliqués plus tôt, c'est un nouveau. qu'est-ce que je manque (et pouvons-nous ajouter cela à la solution de contournement-jusqu'ici en haut)

@aradapilot Il est toujours nécessaire de renommer pour autant que je sache, du moins pour la plupart des gens, mais ce n'est plus le premier changement de nom à contourner le lanceur.
Ce changement de nom utilise toujours le lanceur:
Renommez Bannerlord.exe et Bannerlord_BE.exe en ManagedStarter.exe et ManagedStarter_BE.exe.

Note à toute personne intéressée: j'ai finalement réussi à le faire "fonctionner" avec l'exe renommé et le proton mis à jour. Il s'avère que nvidia-driver-440 était obligatoire car nvidia-driver-435 a entraîné un crash presque 95% du temps dans l'écran de création de personnage. Les performances sont toujours épouvantables, mais je n'ai pas encore essayé Windows, donc je ne sais pas si c'est lié à Linux ou simplement mon ordinateur qui est totalement poubelle :)

Pour vous soumettre à wine-staging, voir ici: https://wiki.winehq.org/Wine-Staging_Development. En gros, attachez le patch à https://bugs.winehq.org/show_bug.cgi?id=36873 , expliquez pourquoi vous pensez qu'il devrait passer à wine-staging sur wine, puis à CC Alistair et Zebediah (responsables de wine-staging) pour les examiner et l'ajouter à la mise en scène du vin.

Terminé. Merci!

En attendant, je vais essayer de voir si je peux en implémenter une qui reflète l'implémentation de la fonction par Windows :)

Sucré. J'ai creusé un peu dessus plus tôt, mais j'ai du mal à comprendre exactement comment Wine obtient son entrée de souris (et où cela pourrait être stocké d'une manière utile à GetMouseMovePointsEx). Je ne suis pas non plus tout à fait sûr si X11 (ou Wayland ou Quartz ou la myriade d'autres systèmes d'affichage utilisés avec Wine) ont des fonctionnalités équivalentes.

Les performances sont tout à fait correctes pour moi avec Mesa 20.0, RADV + ACO sur les graphiques AMD RX 580 (certains bégaiements, par exemple lors du passage à une nouvelle scène, mais cela s'éclaircit rapidement). Le seul problème que j'ai rencontré avec cela jusqu'à présent après la mise à jour pour faire fonctionner l'entrée de la souris est le retard de sauvegarde de la partie.

@craftyguy Combien de RAM avez-vous? Le jeu fonctionne bien pour moi pendant environ 30 minutes, mais après cela, les performances commencent à se dégrader rapidement et l'utilisation de la RAM commence à augmenter. Je n'ai que 8 Go, alors j'essaie de savoir si c'est le problème.

@tkamat J'ai remarqué que "l'état stable" de l'utilisation de la RAM du jeu semble être d'environ 19-20 Go sur ma machine (qui a 32 Go). Ceci indépendamment des paramètres graphiques (essayé à la fois le plus élevé et le plus bas absolu).

OK, pour les futurs intrépides, notez que la méthode @elovin a l'exigence suivante (selon la page TKG)

«Les PKGBUILD ne fonctionneront que sur les distributions avec accès à pacman et makepkg», donc cela peut ne pas convenir aux distributions basées sur Debian à moins que vous ne vouliez aller plus loin pour personnaliser cela.

Je vais essayer sans ça.

Vous pouvez exécuter makepkg dans un conteneur de docker arch linux (peut-être que je vais faire un script simple pour cela) puis décompresser la version proton de la balle tar résultante (les packages arch ne sont que des balles tar).
Je déballe moi-même la version proton et ne l'installe pas à l'échelle du système.

@tkamat Je seconde le commentaire de @YellowApple . J'ai également 32 Go et j'ai remarqué que l'utilisation du jeu était d'environ 20 Go.

Il semble donc que vos problèmes de performances soient liés à la RAM disponible. Cela semble hors sujet car il s'agit probablement d'un problème avec le jeu lui-même et non spécifique au proton / vin.

Il semble donc que protontricks 261550 dotnet48 améliore considérablement le blocage de la sauvegarde (le jeu se bloque pendant quelques secondes au lieu de plusieurs minutes). Merci à l'utilisateur reddit / u / TheCaconym pour le rapport!

De plus, à un moment donné, Steam a mis à jour le jeu et a époustouflé mes changements de nom, mais le lanceur a quand même fonctionné immédiatement. Je n'ai même pas eu à faire un Bannerlord.exeManagedStarter.exe renommer.

Nous sommes moins d'une semaine dans Harvesting Season ™ et Bannerlord est déjà proche de la parité entre Linux et Windows. Huzzah!

Une fois ces patchs en place, le beurre coulera librement.

@YellowApple

J'ai du mal à comprendre exactement comment Wine obtient sa souris

Il l'envoie au serveur, généralement via send_hardware_message dans dlls / user32 / message.c, et la position du curseur sera finalement envoyée à update_desktop_cursor_pos . C'est probablement là que nous devrions ajouter l'implémentation, peut-être dans une nouvelle fonction (probablement en utilisant un tampon en anneau statique pour stocker les 64 entrées?).

La partie ennuyeuse serait de déclarer une nouvelle demande de serveur pour récupérer les positions du curseur. Je ne l'ai jamais fait auparavant, mais je suppose qu'il s'agit de le créer dans queue.c + request.h, de le déclarer dans protocol.def, puis d'exécuter tools/make_requests ?

Vient ensuite la question de savoir si la tâche de filtrage des positions du curseur doit être déléguée au serveur, ou dans l'espace utilisateur? Personnellement, j'opterais pour ce dernier, mais comme il s'agit d'un certain nombre d'entrées (probablement ~ 1 Ko environ de données à envoyer) et que le code de filtrage ne serait pas trop complexe, cela pourrait valoir la peine de le faire sur le serveur.

Je peux confirmer que dotnet48 accélère les économies.
J'ai été l'un des chanceux où la sauvegarde n'a pris qu'environ 10 secondes, mais avec elle, cela prend maintenant environ 2 secondes.

@ albin-engstrom est-il installé sur un SSD ou un disque dur pour vous? Remarqué parfois des temps de chargement très longs entre les scènes. Installation actuelle de dotnet48.

Les performances se dégradent beaucoup pour moi plus je joue. Espérons que ce n'est qu'un bug dans le jeu.

Les performances qui se dégradent au fur et à mesure que vous jouez sont également un problème pour Windows (fuites de mémoire - reconnues par les développeurs IIRC).

@nilleairbar Sur un SSD NVMe, c'est donc assez rapide. Mais il ne semble pas qu'au moins le temps de sauvegarde soit dû aux lectures ou aux écritures, c'est plutôt le processeur qui fonctionne. Il est passé d'environ 30% de charge en jouant à 60% en économisant.
Il peut donc s'agir d'un processeur plus puissant (3900X) qui a dans une certaine mesure conduit à des temps de sauvegarde courts.

@ albin-engstrom c'est peut-être ça. Avec dotnet48 et un i7 8700K, la sauvegarde prend ici aussi moins de deux secondes.

Je suis sur un 1700X et maintenant, après l'installation de dotnet48, la sauvegarde prend environ 20 à 30 secondes au lieu de 2 à 3 minutes, mais maintenant les réservoirs de performance pendant un certain temps après l'enregistrement.

J'obtiens des résultats similaires sur un ancien i5, environ 30 secondes pour économiser maintenant

Alors maintenant, je reçois soudainement un crash ( wine: Unhandled page fault on execute access to 00000000007501C8 at address 00000000007501C8 (thread 0042), starting debugger... ) dès que j'arrive à l'écran des prisonniers après une bataille. Je ne sais pas encore si c'est le résultat de l'utilisation de dotnet48 . Je ne sais pas encore si cela affecte toutes les batailles ou seulement celles avec ce groupe spécifique de pillards (ou avec les pillards en général). Une fois que je réduirai les choses, je mettrai des journaux.

@YellowApple J'ai combattu plusieurs batailles contre des pillards et cela n'a pas conduit à un crash pour moi. (dotnet 48 n'est pas encore installé)

L'approche la plus conviviale "pour les idiots":

J'ai fait ces étapes exactes, le jeu se lance, mais quand il me demande de faire glisser les curseurs de luminosité au tout premier lancement, il n'enregistre aucune entrée (à part le mouvement de la souris) ...

Le jeu fonctionne bien jusqu'à ce que j'essaye de basculer le paramètre "Afficher la direction de l'attaque" dans le menu.
Le jeu plante immédiatement après la fermeture du menu, le message "Vous avez rencontré une erreur, veuillez télécharger vos journaux" apparaît. Lorsque la fenêtre se ferme, Steam pense toujours que le jeu est en cours d'exécution, je ne peux donc pas le relancer via Steam.

J'utilise https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz pour proton

Information système:
NOYAU: 5.5.13-arch2-1
Système d'exploitation: Arch Linux
Processeur: AMD Ryzen 7 3700X 8 cœurs
GPU: AMD NAVI10
PILOTE GPU: 4.6 Mesa 20.0.2
Mémoire RAM: 32 Go

Le jeu fonctionne bien jusqu'à ce que j'essaye de basculer le paramètre "Afficher la direction de l'attaque" dans le menu.
Le jeu plante immédiatement après la fermeture du menu, le message "Vous avez rencontré une erreur, veuillez télécharger vos journaux" apparaît. Lorsque la fenêtre se ferme, Steam pense toujours que le jeu est en cours d'exécution, je ne peux donc pas le relancer via Steam.

J'utilise https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz pour proton

Information système:
NOYAU: 5.5.13-arch2-1
Système d'exploitation: Arch Linux
Processeur: AMD Ryzen 7 3700X 8 cœurs
GPU: AMD NAVI10
PILOTE GPU: 4.6 Mesa 20.0.2
Mémoire RAM: 32 Go

J'ai eu plusieurs plantages au début lors de la modification des paramètres vidéo, il suffit de tuer le processus et de redémarrer le jeu.

Rapport: Le jeu fonctionne correctement et économise en environ 1 minute sur ma machine. Utiliser la solution de contournement et renommer en «Géré». Sur l'écran de luminosité, j'ai sélectionné de bons paramètres pour moi, puis j'ai quitté le jeu dans le menu principal. Ensuite, j'ai suivi un didacticiel, modifié certains paramètres supplémentaires, et la plupart des paramètres graphiques sont toujours en haut. Les performances sont médiocres (probablement autour de 30-40 FPS). Je n'ai pas connu de crash jusqu'à présent, mais je viens juste de quitter le tutoriel et j'ai rencontré des réfugiés. Merci à tous, développeurs, testeurs, Valve et Taleworlds de nous avoir amenés ici.

Information système:
Système d'exploitation: Debian 10 (buster)
Mémoire RAM: 16 Go
Processeur: Ryzen 2700X
GPU: AMD 580X
Pilote: Debian 10 (Mesa 18.3.6)

Le jeu fonctionne bien jusqu'à ce que j'essaye de basculer le paramètre "Afficher la direction de l'attaque" dans le menu.
Le jeu plante immédiatement après la fermeture du menu, le message "Vous avez rencontré une erreur, veuillez télécharger vos journaux" apparaît. Lorsque la fenêtre se ferme, Steam pense toujours que le jeu est en cours d'exécution, je ne peux donc pas le relancer via Steam.
J'utilise https://yellowapple-misc.s3-us-west-2.amazonaws.com/proton_5.0-local.tar.gz pour proton
Information système:
NOYAU: 5.5.13-arch2-1
Système d'exploitation: Arch Linux
Processeur: AMD Ryzen 7 3700X 8 cœurs
GPU: AMD NAVI10
PILOTE GPU: 4.6 Mesa 20.0.2
Mémoire RAM: 32 Go

J'ai eu plusieurs plantages au début lors de la modification des paramètres vidéo, il suffit de tuer le processus et de redémarrer le jeu.

J'ai tué le processus de vapeur et j'ai recommencé bannerlord, étonnamment, le réglage que j'ai changé est resté changé.

@elovin Je steam-261550.log (exclut +seh car avec dotnet48 qui spammait toutes sortes de choses).

Je vais essayer un nouveau préfixe avec la même sauvegarde et sans dotnet48 et voir si le problème persiste. Si ce n'est pas le cas, alors je suppose que nous devrons soit dépanner la buggery .NET, soit nous revenons à la planche à dessin avec ces longs délais de sauvegarde.

@ onodera-punpun Si vous pouvez ajouter PROTON_LOG=1 à vos options de lancement et fournir le ~/steam-261550.log résultant, ce serait utile.

@YellowApple après avoir installé dotnet48 avec winetricks, je reçois un message lors du chargement de mon dernier jeu "Charger le jeu sauvegardé avec différents modules" ou quelque chose comme ça alors peut-être qu'un nouveau jeu fonctionne.

Le temps de sauvegarde ne s'est pas amélioré pour moi, il reste environ 15 secondes et aucun crash jusqu'à présent en combattant les pillards

@elovin c'est le message standard après le chargement d'une sauvegarde 1.0.0 après une mise à jour vers 1.0.1; peut-être que c'est l'origine (seulement pertinent s'il s'avère que vous avez chargé une sauvegarde 1.0.0 après dotnet48, et que vous avez déjà mis à jour vers 1.0.1)?

@YellowApple pour ce que ça vaut, avec mon préfixe dotnet48, je ne reçois aucun crash en accédant à l'écran des prisonniers après une bataille (j'ai fait de nombreuses batailles avec de nombreux prisonniers). La plupart de mes combats jusqu'à présent étaient avec des pillards, pas encore de bandits de montagne.

@ onodera-punpun Bizarre, rien ne ressort. Vous n'avez aucun contrôleur branché ou quoi que ce soit d'autre qui pourrait interférer, non?

@elovin Je pense que cela a à voir avec les versions de jeu mises à jour (1.0.2 vient de tomber).

@ElCaconym C'est bon à savoir. La même sauvegarde sous un nouveau préfixe non- dotnet48 plante dans les mêmes conditions, donc au moins je peux l'exclure. Probablement juste une sauvegarde corrompue (ce qui semble être un problème courant même sous Windows, si les forums sont quelque chose à faire). (EDIT: et en effet, sous un nouveau jeu avec dotnet48 je suis capable de faire des prisonniers sans m'écraser, pour l'instant du moins)

@YellowApple Je pensais que c'était peut-être mon gestionnaire de fenêtres, alors j'ai essayé d'exécuter le jeu dans une instance X sans WM, mais cela n'a pas résolu le problème. J'ai juste un clavier et une souris USB normaux, rien d'autre.

EDIT: J'ai mis brightness_calibrated dans la configuration du moteur à 1 pour passer directement au menu, et là aussi, cliquer ne fait rien.

EDIT2: J'ai désactivé enable steam play for all other titles , cela semblait résoudre le problème. D'une manière ou d'une autre, cela a écrasé l'utilisation de mon proton personnalisé défini de force ....

Quelqu'un d'autre rencontre-t-il le problème de connexion infructueuse lors d'une tentative d'exécution multijoueur? Il ne cesse de me lancer ces messages "échec de connexion" après de longues périodes d'attente.

@YellowApple @ElCaconym Oui, vous avez raison, c'est à cause de la mise à jour.

Quelqu'un d'autre rencontre-t-il le problème de connexion infructueuse lors d'une tentative d'exécution multijoueur? Il ne cesse de me lancer ces messages "échec de connexion" après de longues périodes d'attente.

Je n'ai entendu aucun rapport indiquant que quiconque était capable de fonctionner en multijoueur depuis qu'ils ont ajouté Batlleye au début de la bêta.

Quelles sont les chances que le mode multijoueur fonctionne sur Bannerlord? J'avais l'habitude de jouer à Warband tout le temps en ligne dans Ubuntu à l'époque.

sooo j'ai vu la note sur dotnet48 et l'ai installé, en même temps j'ai remarqué que Steam avait mis à jour le jeu à 1.0.2, et maintenant il bégaye sur tout ce qui dépasse les graphiques min (obtenu un 1070) et se bloque constamment juste en mouvement dans le monde ouvert. annnnd parce que deux variables ici, je ne peux pas dire si c'est le patch ou la chose dotnet qui l'a causé. un indice sur ce qu'il faut rechercher? ou comment réinitialiser mon env proton sans dotnet à tester?

@aradapilot : Je fonctionne bien sur dotnet48 + 1.0.2 (je joue depuis 30 minutes environ sans problème). Peut-être un problème de corruption de sauvegarde? peut-être essayer un nouveau jeu temporairement pour confirmer? 1070 ici aussi.

@aradapilot ouais, je viens de faire quelques tests, et il semble que si dotnet48 réduit considérablement le gain de temps, il introduit également une énorme quantité de bégaiement après l'enregistrement, et cela dure jusqu'à ce que vous redémarriez le jeu. Alors que sans dotnet48, le jeu fonctionne très bien pour moi avant et après la sauvegarde. IDK si ce problème n'affectera que les personnes avec des systèmes moins puissants / seulement 8 Go de RAM, mais oui, c'est super bizarre.

Ok après le redémarrage d'un PC, le jeu plante quand à la fin d'un combat et que les temps de chargement sont meilleurs maintenant, le serveur wine ne se ferme-t-il pas si vous quittez le jeu?

@tkamat a 32G ici, pas à court de mémoire, ni n'importe où sur le plan matériel. J'ai besoin de trouver comment dé-protontricks le jeu maintenant, mes sauvegardes n'étaient pas si lentes avant, mais aucune page de manuel et -h ne dit rien sur la suppression

@aradapilot j'ai le même problème
@ElCaconym Y a-t-il d'autres modifications faites autres que les renommages, le patch hackish et l'ajout de dotnet480?
@tkamat Oui, la première fois que vous entrez dans le jeu avant la première sauvegarde, il s'exécute comme prévu. J'ai un système puissant de 32 Go et il commence toujours à bégayer avec des réglages très bas, donc je ne pense pas que votre système soit à l'origine de cela

@tkamat Je l'ai remarqué aussi. Semble être principalement confiné à la vue de la carte; les combats, se promener dans les villes / villages, etc. semblent être mieux.

@elovin Intéressant. S'agit-il d'une sauvegarde existante ou d'une nouvelle campagne?

@aradapilot Il n'y a malheureusement pas de moyen simple d'inverser quelque chose installé via protontricks . Le mieux est de sauvegarder vos sauvegardes, de supprimer ou de renommer ~/.steam/steam/steamapps/compatdata/261550 , de lancer le jeu une fois pour tout régénérer et de recopier vos sauvegardes.

@elovin wineerver

@ simi2525 rien qui

Quelqu'un d'autre rencontre-t-il le problème de connexion infructueuse lors d'une tentative d'exécution multijoueur? Il ne cesse de me lancer ces messages "échec de connexion" après de longues périodes d'attente.

Je n'ai entendu aucun rapport indiquant que quiconque était capable de fonctionner en multijoueur depuis qu'ils ont ajouté Batlleye au début de la bêta.

Quelles sont les chances que le mode multijoueur fonctionne sur Bannerlord? J'avais l'habitude de jouer à Warband tout le temps en ligne dans Ubuntu à l'époque.

Le jeu a fonctionné pendant quelques correctifs après l'ajout de Battleye, car ils vous permettent toujours de rejoindre des jeux sans l'activer. Au cours des deux dernières semaines, la bêta fermée a cessé de fonctionner sur Linux, ce qui a probablement coïncidé avec le fait de rendre le battleye obligatoire. Je pense que le mieux que nous puissions espérer sans une version native de Linux est que les mondes de contes remplacent la vérification de Battleeye pour les installations de wine ou le passage à VAC. La compatibilité des protons de Battleye n'est probablement pas dans les cartes car elle fait de la sorcellerie dans l'espace noyau.

@YellowApple c'était une sauvegarde existante, j'ai commencé un nouveau jeu maintenant et maintenant il ne plante plus.

Une idée de l'endroit où se trouvent les fichiers de sauvegarde, haha?

@NovenTheHero .steam / steam / steamapps / compatdata / 261550 / pfx / drive_c / users / steamuser / My \ Documents / Mount \ et \ Blade \ II \ Bannerlord / Game \ Saves / Native /

J'ai écrit quelques scripts rapides pour automatiser les divers bricolages discutés ici et sur ProtonDB , en veillant à donner du crédit (via URL) pour chaque ajustement.

@YellowApple WineHQ pense que c'est la cause de la question de l' entrée; si c'est ce que vous avez corrigé, pouvez-vous y publier des messages croisés?
EDIT: Nevermind, semble que vous avez déjà. :)

Avant que les gens ne suppriment leurs préfixes de protons, assurez-vous qu'aucun jeu n'est configuré pour utiliser ledit préfixe car, si je me souviens bien, cela causera des problèmes.

Merci à tous pour votre travail à ce sujet. C'est formidable de voir comment la communauté Linux est capable de résoudre rapidement les problèmes et d'envoyer des correctifs en amont! J'ai compilé une version proton modifiée basée sur un tutoriel publié précédemment et cela fonctionne très bien.

Pour moi, économiser a également pris un certain temps sans dotnet48, tandis que l'installation de cette bibliothèque a également corrigé cela pour moi. J'ai rencontré des problèmes de performances, comme en ont déjà discuté d'autres. Hier soir, j'ai remarqué que mon fichier xorg-session.log augmentait excessivement, jusqu'à 25 Go. Je n'ai pas pu tester si ce problème est lié à Bannerlord. Testera plus dans la soirée.

J'ai écrit quelques scripts rapides pour automatiser les divers bricolages discutés ici et sur ProtonDB , en veillant à donner du crédit (via URL) pour chaque ajustement.

* [config-bannerlord-for-linux.bash](https://github.com/MilesBHuff/Misc-code/blob/master/code/setup/wine/config-bannerlord-for-linux.bash)

* [config-steam-for-bannerlord.bash](https://github.com/MilesBHuff/Misc-code/blob/master/code/setup/wine/config-steam-for-bannerlord.bash) (@YellowApple)

L'écran de luminosité ne serait-il pas corrigé avec la correction du curseur de la souris? C'était du moins pour moi.

Peut-être que quelqu'un peut le tester, mais pour le moment, visiter n'importe quelle forge entraîne une sauvegarde corrompue de sorte que j'obtienne une moyenne de 15 fps, mais uniquement sur la carte de la campagne, tout le reste fonctionne bien.

Modifier: cela persiste après le redémarrage du jeu ou de l'ordinateur.

J'ai visité une forge et rien de notable ne s'est produit.
(Utilisation du proton de Yellowapple et 32 ​​Go de RAM)

EDIT2: J'ai désactivé enable steam play for all other titles , cela a semblé résoudre le problème. D'une manière ou d'une autre, cela a écrasé l'utilisation de mon proton personnalisé défini de force ....

Putain de merde ... C'était mon problème tout le temps! Maintenant, les correctifs fonctionnent pour moi! Je laisse même mes fichiers valider du jour au lendemain pour me débarrasser de mes renommages, et même le lanceur fonctionne.

J'ai essayé le Proton de YellowApple, en installant dotnet48, mais il plante toujours mon WM après la création du personnage.

/Éditer
Voici l'erreur de crash WM que j'ai trouvée à ce sujet. Les fois où il ne plante pas mon WM, tout le système se fige. i5-3570k, AMD RX 580 et 32 ​​Go de RAM

noyau: [34245.701791] [ drm: amdgpu_job_timedout [amdgpu]] ERROR ring gfx timeout, mais soft récupéré

Je peux confirmer que l'ajout de dotnet48 a résolu mon problème de gain de temps. Il est passé de 60 au début à 90 + après quelques heures de jeu à une utilisation maximale du processeur jusqu'à <20 secondes et le processeur n'est plus au maximum lors de la sauvegarde.

Maintenant, il y a un microstutter persistant dans la carte de la campagne qui n'existait pas auparavant, les batailles semblent cependant n'avoir aucun problème. Ennuyeux mais certainement jouable dans cet état. 32 Go de RAM / 1070ti, ce n'est probablement pas des spécifications, mais j'essaierai de jouer avec certaines options plus tard.

@evopls, c'est essentiellement le même problème auquel je suis confronté. Mauvais fps et microstutter sur la carte de la campagne, toutes les autres scènes n'ayant pratiquement aucun problème. Je suis sur un 1070 avec 16 Go de RAM.

Edit: OK, a fait une nouvelle version de Proton via wine-tkg avec le patch inclus dans wine-staging, fonctionne maintenant. Sans dotnet48 installé, tout est fluide, sauf pour la sauvegarde (les problèmes déjà discutés). Va installer dotnet48 maintenant pour voir si c'est le coupable de l'expérience de bégaiement sur la carte de la campagne.

@nilleairbar J'ai remarqué pour moi que le bégaiement a disparu lorsque je redémarre le jeu, mais le tout premier gain de temps (manuellement ou via sauvegarde automatique) le déclenche à nouveau. Les options de performance n'ont fait aucune différence.

@ekaats

L'écran de luminosité ne serait-il pas corrigé avec la correction du curseur de la souris? C'était du moins pour moi.

Ouais c'est ça. Les trois lignes de configuration que je modifie avec config-bannerlord-for-linux.bash étaient antérieures à la disponibilité du correctif d'entrée. Je vais commenter les parties obsolètes du script.

Merci pour le script @MilesBHuff , vraiment utile et il me conduit au menu principal.
J'ai essayé de rassembler des informations, il est impossible de jouer à Campaign, n'est-ce pas? Certaines personnes ont réussi à le faire, s'agit-il des derniers correctifs?

@ Haywire-dev, il est tout à fait possible de jouer à Campaign. Le plus gros problème est le "bogue" de sauvegarde qui fait que la sauvegarde prend plusieurs minutes. L'installation de dotnet48 via protontricks ou similaire atténue cela, mais peut entraîner des problèmes de performances sur la carte de la campagne (voir mes articles ou ceux d'Evopls).

Edit: Oh et j'ai oublié de mentionner, bien sûr, vous avez besoin d'une version Proton qui inclut le patch wine mentionné dans ce numéro ou qui est basée sur la version la plus récente de wine-staging fournie avec le patch appliqué.

@nilleairbar

Edit: Oh et j'ai oublié de mentionner, bien sûr, vous avez besoin d'une version Proton qui inclut le patch wine mentionné dans ce numéro ou qui est basée sur la version la plus récente de wine-staging fournie avec le patch appliqué.

Je suis sûr que je vais être critiqué pour cela, mais comment puis-je m'assurer que j'ai le bon Proton? J'ai été aussi loin que la création de personnage avant que le jeu / WM / l'ordinateur ne plante. Je suppose que le 5.0-local d'OP / YellowApple ne l'a pas inclus (encore)?

Je reçois aussi des plantages occasionnels lors de la navigation dans les menus / création de personnage. Cela semble finalement fonctionner, d'une manière assez fragile, et la souris ne fonctionne pas évidemment, du moins dans les menus. Pas encore testé dans le jeu.

Je suis sûr que je vais être critiqué pour cela, mais comment puis-je m'assurer que j'ai le bon Proton? J'ai été aussi loin que la création de personnage avant que le jeu / WM / l'ordinateur ne plante.

À l'heure actuelle, la version la plus simple serait d'utiliser la version de Proton @YellowApple partagée. L'option la plus sûre serait de le construire vous-même en utilisant quelque chose comme https://github.com/Frogging-Family/wine-tkg-git

À l'heure actuelle, la version la plus simple serait d'utiliser la version de Proton @YellowApple partagée. L'option la plus sûre serait de le construire vous-même en utilisant quelque chose comme https://github.com/Frogging-Family/wine-tkg-git

Oui, j'utilise actuellement le Proton de YellowApple et j'ai renommé les deux .exe, mais je ne peux toujours pas passer la création de personnage. Je regarde maintenant les trucs de wine-tkg, peut-être que cela aidera.

Sinon, je garde un œil ici pour tout autre chose à essayer.

@evopls au cas où cela vous intéresserait, a fait des tests tout à l'heure et le bégaiement est apparemment causé par dotnet48. Je vais jouer sans ça pour l'instant et avoir des temps de sauvegarde assez longs au lieu de ce bégaiement sur la carte de la campagne.

Dotnet48 le détruit complètement pour moi ... Je ne peux même plus démarrer le jeu. J'ai désinstallé mais je suis toujours confronté aux mêmes problèmes d'écran de campagne que les autres.

Juste par curiosité @ Foobar1923 quel pilote graphique utilisez-vous?

J'ai une carte nvidia, donc cela peut différer pour vous, mais j'ai dû mettre à jour le pilote de ma carte graphique, même si celui que j'utilisais était assez récent. Je suis passé de crash total la plupart du temps à jouable mais avec un problème de framerate sur certains écrans (tous les écrans où vous avez un gros plan sur un personnage, peut-être que c'est lié à la dispersion souterraine?).

@SylvainSoKette

J'utilise le stock amdgpu. J'ai mis à jour mon wine / winetricks / wine-staging etc et mesa (devrait) être à jour ainsi que vulkan.

Avez-vous une idée de combien de temps il faudra avant que ces patchs soient attirés dans Proton, maintenant qu'une partie commence à toucher le vin en amont?

@CrafterSvK À peu

@CrafterSvK À peu

Ouais j'ai oublié. Quoi qu'il en soit, chaque fois que je clique sur Continuer à la fin du combat, le jeu plante.

De plus, je ne vois aucune mention du mode sans échec dans ce fil. Mon jeu plante à chaque fois que j'ouvre le menu "fête", mais au redémarrage il me demande si je veux démarrer en mode sans échec, et si je dis oui il ne plante plus.

Est-ce que tout le monde ici utilise le mode sans échec?

Je n'ai pas encore essayé le mode sans échec; que fait-il réellement? Mon hypothèse serait que (comme la plupart des jeux), il ne ferait que réduire les paramètres graphiques, mais maintenant vous me demandez s'il fait également une gestion supplémentaire des exceptions ou une vérification de la sécurité d'exécution.

EDIT: est allé de l'avant et l'a essayé. On dirait que cela réinitialise simplement engine_config.txt aux valeurs par défaut. Ne désactive même pas les mods.

De plus, je ne vois aucune mention du mode sans échec dans ce fil. Mon jeu plante à chaque fois que j'ouvre le menu "fête", mais au redémarrage il me demande si je veux démarrer en mode sans échec, et si je dis oui il ne plante plus.

Est-ce que tout le monde ici utilise le mode sans échec?

J'essaierais au moins, mais je n'ai pas cette option. Juste le crash de WM / PC.

J'ai testé certaines choses et jusqu'à présent, je suis arrivé aux mêmes conclusions que les autres. dotnet48 semble résoudre le problème de sauvegarde mais rend le reste du jeu beaucoup moins stable.

Avec dotnet48, j'ai eu des plantages lors de l'enregistrement, du chargement, de l'entrée dans les batailles et les villes. Certains d'entre eux étaient des plantages sur le bureau, d'autres bloquaient le processus.

Sans dotnet48, j'ai pu jouer sans beaucoup de problèmes supplémentaires, juste au moment où l'utilisation du processeur passe à 100% pendant 1:40 minutes (sur un Ryzen 1700). Ensuite, tout est revenu à la normale et je peux continuer très bien.

Notez que le jeu enregistre sur certains moments spécifiques. J'ai remarqué que cela économise lors du combat (avant d'afficher l'écran où vous choisissez de vous battre ou de laisser les dés décider), parfois aussi après avoir quitté une ville ou lors de la remise d'une quête.

Maintenant, je teste avec Redistributable pour Visual Studio 2017 installé. Jusqu'à présent, cela ne semble pas avoir d'importance.

Mes paramètres graphiques sont les plus élevés et le mode sans échec ne les modifie pas.
Je ne vois aucune différence autre que l'absence de crash.
(je n'utilise pas dotnet48 car le jeu ne serait même pas lancé)

Eh bien, il plante la même chose avec le mode sans échec sur ma machine.

@Xxdzs J'en ai aussi depuis que j'utilise dotnet48, mais seulement si j'ouvre immédiatement le menu après le chargement. Si je joue un peu d'abord, je me sens très stable.

Dans l'ensemble, le léger bégaiement sur la carte de la campagne me semble beaucoup mieux que les temps de sauvegarde de plus en plus longs sans dotnet48, mais c'est probablement une préférence personnelle. Je ne sais pas lequel de ces deux problèmes serait plus facile à résoudre.

J'ai fait des tests sans dotnet48 et en contournant le lanceur.

Certainement, certains menus plantent encore, les économies occasionnelles se bloquent toujours après plus de 45 secondes. La carte de campagne fonctionne très bien, peu ou pas de décalage, bien qu'il se passe définitivement quelque chose de funky lorsque le jeu charge certains actifs et menus. Un ami a-t-il essayé également sur son processeur Intel et nous constatons tous les deux de petites pics d'utilisation du processeur en essayant d'accéder à certains menus avec les retards habituels.

La désactivation de la diffusion du sous-espace semble aider certaines zones avec dotnet48, bien que cette correction semble définitivement plus stable que sans dotnet48.

EDIT: Welp, peu importe, tout en aidant légèrement à la stabilité, le jeu est toujours un désordre instable pour moi pour la plupart. Après environ 4-5 dialogues en jeu, le jeu se verrouille et plante.

Chaque crash me pointe vers NTQueryInformationThread.

41819.290:0035:00c4:trace:seh:dump_unwind_info     handler 0x64478533758 data at 0x64478648688
41837.875:0035:00c6:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41837.875:0035:00cb:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41837.876:0035:00c9:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.732:0035:00c7:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.733:0035:00c1:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.829:0035:00bd:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.830:0035:00ca:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.925:0035:00c2:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41838.925:0035:00be:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.022:0035:00cc:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.023:0035:00bf:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.023:0035:00c3:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.119:0035:00cd:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.122:0035:00c5:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.122:0035:00ce:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.312:0035:00ba:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.312:0035:00c4:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.313:0035:00bc:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41839.313:0035:00c8:fixme:thread:NtQueryInformationThread ThreadIsIoPending info class not supported yet
41849.393:0024:0028:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\WineUsd.sys" : builtin
41849.396:001c:0020:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\winehid.sys" : builtin
41849.396:001c:0020:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\hidclass.sys" : builtin
41849.397:001c:0020:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\winebus.sys" : builtin
41849.521:007b:007c:fixme:ntdll:EtwEventUnregister (deadbeef) stub.
41849.541:0074:0075:fixme:ntdll:EtwEventUnregister (deadbeef) stub.
pid 155001 != 155000, skipping destruction (fork without exec?)

2ème EDIT:

Après avoir changé quelques trucs et patché à partir de tkg, je travaille plutôt bien en stabilité, bien que mes performances dans la carte de campagne soient chez les adolescents avec un bégaiement sévère 80% du temps, quels que soient les paramètres graphiques inférieurs choisis.

On dirait que les choses se sont calmées ici, ce qui signifie que la plupart d'entre nous apprécions le jeu. Je fonctionne sur une plate-forme assez robuste sans dotnet48, et à part ~ 30 secondes de sauvegarde, je n'ai pas eu un seul crash.

Ça doit être sympa, d'après ce que j'ai vu cependant, il y a des tas de gens qui subissent un bégaiement sévère dans la carte de la campagne, les menus de dialogue / sauvegarde provoquent des CTD et des sauvegardes corrompues et quelques-uns ne peuvent pas du tout entrer dans la forge.

Pour moi, parler avec les bandits entraîne un CTD 10% du temps, je reçois un bégaiement sévère dans la carte de campagne, mais les batailles se déroulent plus doucement que la machine Windows de mon ami à l'exception du hoquet de temps en temps.

Nous espérons que les choses devraient être réglées au fil du temps, avec un accès anticipé. Après tout, nous constatons également un certain nombre de ces problèmes dans Windows. Je suis donc surpris que Bannerlord fonctionne aussi bien que sur WINE comme il le fait maintenant.

Le jeu fonctionne bien mais je reste bloqué sur des écrans de chargement infinis et j'obtiens cette erreur
error

On dirait que les choses se sont calmées ici, ce qui signifie que la plupart d'entre nous apprécions le jeu. Je fonctionne sur une plate-forme assez robuste sans dotnet48, et à part ~ 30 secondes de sauvegarde, je n'ai pas eu un seul crash.

Ça doit être sympa, d'après ce que j'ai vu cependant, il y a des tas de gens qui subissent un bégaiement sévère dans la carte de la campagne, les menus de dialogue / sauvegarde provoquent des CTD et des sauvegardes corrompues et quelques-uns ne peuvent pas du tout entrer dans la forge.

Pour moi, parler avec les bandits entraîne un CTD 10% du temps, je reçois un bégaiement sévère dans la carte de campagne, mais les batailles se déroulent plus doucement que la machine Windows de mon ami à l'exception du hoquet de temps en temps.

Nous espérons que les choses devraient être réglées au fil du temps, avec un accès anticipé. Après tout, nous constatons également un certain nombre de ces problèmes dans Windows. Je suis donc surpris que Bannerlord fonctionne aussi bien que sur WINE comme il le fait maintenant.

Avez-vous essayé de tester avec un environnement protonique complètement propre? Vous pouvez en exécutant protontricks 261550 annihilate . Cela ne supprimera pas vos sauvegardes. Mes excuses si ce conseil s'apparente à «avez-vous essayé de l'éteindre et de le rallumer», cela m'a cependant aidé.

Je n'ai pas rencontré de plantages en jouant sans dotnet48, sauf lorsque je tente de modifier les paramètres, ce qui entraîne un crash immédiat.

@ mjm2000 Le jeu a beaucoup de bugs qui lui sont propres. J'ai également fait face à des écrans de chargement infinis sur Windows 10

@montyubuntu le jeu est-il mis à jour avec la dernière version? Les problèmes avec ManagedStarter n'apparaissaient que pour moi et les autres (je crois) sur la version e1.0.0.0

@montyubuntu le jeu est-il mis à jour avec la dernière version? Les problèmes avec ManagedStarter n'apparaissaient que pour moi et les autres (je crois) sur la version e1.0.0.0

Je viens de vérifier et le correctif de la souris est maintenant inclus dans wine-staging. Le lanceur ne fonctionne toujours pas pour moi, j'ai donc dû remplacer l'exécutable du lanceur par l'exécutable du jeu.

Je recommande de demander de l'aide sur les forums - gardons ce problème pour enquêter sur les problèmes avec le jeu uniquement, pas le support également. Un bon nombre de personnes le font fonctionner maintenant, il est donc probable que quelque chose soit différent avec votre configuration.

Fait intéressant, il y a ce problème connu signalé (sur Windows, je veux dire) sur les forums officiels de taleworlds:

Stuttering camera movement on the Campaign Map is under investigation.

Ce qui peut suggérer que le problème que certaines personnes rencontrent avec dotnet48 n'est pas - ou pas entièrement - lié au vin. Il y a aussi de nombreux rapports sur le jeu qui bégaye davantage au fur et à mesure qu'une campagne est en cours, surtout si vous sauvegardez et rechargez souvent; jusqu'à la version 1.0.2, recharger et enregistrer 45 fois garantirait également que tout rechargement supplémentaire de la sauvegarde concernée ferait planter le jeu. Alors que la 1.0.3 est censée avoir résolu ce problème de gonflement / corruption de sauvegarde, il y a aussi beaucoup de rapports qu'elle n'a pas (une campagne donnée dure un peu plus longtemps avec 1.0.3 mais c'est tout, apparemment).

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

J'ai essayé cela, avec la version 1.0.3, et les performances étaient pires dans certains domaines, meilleures dans d'autres.

après la mise à jour vers la 1.0.4, tout le jeu fonctionne parfaitement, c'est incroyable.

@nilleairbar Je

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

J'ai essayé cela, avec la version 1.0.3, et les performances étaient pires dans certains domaines, meilleures dans d'autres.

après la mise à jour vers la 1.0.4, tout le jeu fonctionne parfaitement, c'est incroyable.

Comment installez-vous 2017 après 2015? J'obtiens des erreurs dans le programme d'installation de 2017 indiquant qu'une autre version est déjà installée. Je ne sais même pas comment désinstaller 2015 maintenant.

Il semble que Steam (au moins via Proton) préinstalle les environnements d'exécution VC 2015 et 2017. Je reçois également ces erreurs maintenant (même si cela fait un moment que je n'ai pas essayé).

Sur une autre note, il me semble que la mise à jour vers 1.0.4 a considérablement aggravé les choses en termes de fréquence d'images de la carte (EDIT: j'ai oublié de préciser que c'est uniquement lorsque le temps avance; lorsqu'il est mis en pause, il tourne à environ 30 ips). Semble être quelque chose de cassé avec le multithreading; Le GPU est à 1% d'utilisation selon le DXVK HUD, et un seul cœur semble être lié à la fois. De plus, apparemment htop rapporte que le jeu utilise maintenant 1,2 To de RAM, ce qui est à la fois horrible et fascinant:

Screenshot at 2020-04-03 16-21-20

Cela pourrait être un mod, cependant (depuis que je les teste). Peut-être aussi juste quelque chose de gagné avec ma sauvegarde. Les journaux ne montrent aucune arme à feu particulière.

EDIT: il s'avère que le bégaiement provenait du mod ClanTweaker. D'autres personnes se sont également plaints des baisses de framerate, mais pas autant que je les ai connues.

La taille de la mémoire virtuelle de 1,2 To est légèrement préoccupante et peut indiquer une fuite de mémoire, mais presque rien de tout cela n'est réellement _mappé_ sur des pages physiques (c'est-à-dire, de la RAM réelle) - vous n'utilisez que 17 des 32 Go de RAM. Donc, à certains égards, cela est inoffensif, à moins que le processus ne demande plus de mémoire virtuelle, il peut alors manquer d'adresses 64 bits et planter.

Il semble que Steam (au moins via Proton) préinstalle les environnements d'exécution VC 2015 et 2017. Je reçois également ces erreurs maintenant (même si cela fait un moment que je n'ai pas essayé).

Sur une autre note, il me semble que la mise à jour vers 1.0.4 a considérablement aggravé les choses en termes de fréquence d'images de la carte. Semble être quelque chose de cassé avec le multithreading; Le GPU est à 1% d'utilisation selon le DXVK HUD, et un seul cœur semble être lié à la fois. De plus, apparemment htop rapporte que le jeu utilise maintenant 1,2 To de RAM, ce qui est à la fois horrible et fascinant:

Screenshot at 2020-04-03 16-21-20

Cela pourrait être un mod, cependant (depuis que je les teste). Peut-être aussi juste quelque chose de gagné avec ma sauvegarde. Les journaux ne montrent aucune arme à feu particulière.

Je viens de remarquer ce commentaire sur reddit:

"Ouais, ça m'est arrivé aussi, il est passé à mon Intel au lieu de Nvidia (et même ça me donne seulement 128 Mo de puissance, comme wtf?) Et je ne peux pas le changer.
Je suis désolé d'entendre que cela vous arrive aussi, mon pote, mais d'un autre côté, je me sens vraiment mieux que mon Nvidia n'a pas brûlé xD. "

Il semble que le jeu essaie d'utiliser les graphiques intégrés sur le processeur de cet utilisateur. Intéressant

Cette machine n'a pas du tout de GPU intégré, donc cela ne semble pas être un coupable probable dans mon cas, hélas.

* Build my own Proton version (tkg) from source with the newest wine-staging build that includes the mouse cursor fix

Mon manque de connaissance de Linux est visible, mais cette solution est réservée aux utilisateurs arch, non? La seule chose que j'ai trouvée pour la "version Proton (tkg)" c'est quoi ça et ça se réfère à PKGBUILDS qui sont une chose archée, non? Existe-t-il un moyen de faire la même chose sur kde neon (base ubuntu 18.04)?

* Build my own Proton version (tkg) from source with the newest wine-staging build that includes the mouse cursor fix

Mon manque de connaissance de Linux est visible, mais cette solution est réservée aux utilisateurs arch, non? La seule chose que j'ai trouvée pour la "version Proton (tkg)" c'est quoi ça et ça se réfère à PKGBUILDS qui sont une chose archée, non? Existe-t-il un moyen de faire la même chose sur kde neon (base ubuntu 18.04)?

Ouais, c'est un truc de voûte. J'ai remarqué sur le readme qu'il avait dit que c'était possible sans arc, juste peut-être un peu plus impliqué.

De plus, il y a quelques heures, il y avait un bug avec proton-tkg le rendant incapable de construire de toute façon.

* Build my own Proton version (tkg) from source with the newest wine-staging build that includes the mouse cursor fix

Mon manque de connaissance de Linux est visible, mais cette solution est réservée aux utilisateurs arch, non? La seule chose que j'ai trouvée pour la "version Proton (tkg)" c'est quoi ça et ça se réfère à PKGBUILDS qui sont une chose archée, non? Existe-t-il un moyen de faire la même chose sur kde neon (base ubuntu 18.04)?

Ouais, c'est un truc de voûte. J'ai remarqué sur le readme qu'il avait dit que c'était possible sans arc, juste peut-être un peu plus impliqué.

De plus, il y a quelques heures, il y avait un bug avec proton-tkg le rendant incapable de construire de toute façon.

C'est une chose archée, mais l'exécutable crée uniquement une archive tar que vous pouvez extraire où vous le souhaitez (par exemple dans le répertoire suggéré dans le commentaire principal, sous "solution de contournement actuelle"). Si vous avez un arc, il peut le faire automatiquement pour vous, mais ce n'est pas un grand pas. Le problème avec celui-ci a été résolu en une heure et il se construit maintenant correctement.

salut,
grâce au travail de @YellowApple , j'ai pu compiler un proton-tkg fonctionnel sur ubuntu, suivi les étapes de @nilleairbar et pouvoir jouer au jeu.

nvidia gtx 1070 me donne environ 30 images par seconde à 3840x2160 sur terre et sur de petites escarmouches, des conversations dans des tavernes ou des villages, etc.
Screenshot from 2020-04-04 03-21-08

combats plus importants environ 20 contre 20, conversations sur la carte terrestre, magasins, forge, parfois bégaiement d'inventaire à environ 2 ~ 3 fps
Screenshot from 2020-04-04 03-26-10

les accidents se produisent encore pour moi, mais rarement

modifier: régler les paramètres sur moyen résout le problème de 2 ~ 3 ips, l'enregistrement prend environ 3 secondes maximum

* Build my own Proton version (tkg) from source with the newest wine-staging build that includes the mouse cursor fix

Mon manque de connaissance de Linux est visible, mais cette solution est réservée aux utilisateurs arch, non? La seule chose que j'ai trouvée pour la "version Proton (tkg)" c'est quoi ça et ça se réfère à PKGBUILDS qui sont une chose archée, non? Existe-t-il un moyen de faire la même chose sur kde neon (base ubuntu 18.04)?

Ouais, c'est un truc de voûte. J'ai remarqué sur le readme qu'il avait dit que c'était possible sans arc, juste peut-être un peu plus impliqué.
De plus, il y a quelques heures, il y avait un bug avec proton-tkg le rendant incapable de construire de toute façon.

C'est une chose archée, mais l'exécutable crée uniquement une archive tar que vous pouvez extraire où vous le souhaitez (par exemple dans le répertoire suggéré dans le commentaire principal, sous "solution de contournement actuelle"). Si vous avez un arc, il peut le faire automatiquement pour vous, mais ce n'est pas un grand pas. Le problème avec celui-ci a été résolu en une heure et il se construit maintenant correctement.

Y a-t-il de nouveaux changements dans Wine-Stable qui semblent profiter à Bannerlord? J'ai déjà une version personnalisée avec uniquement les modifications de YellowApple, je me demande simplement s'il vaudrait la peine d'en créer une nouvelle à partir de la mise en scène.

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

image

J'ai essayé cela mais maintenant le jeu semble vouloir utiliser un graphisme intégré Intel que je n'ai même pas? Le jeu est très lent et il ne semble pas possible de changer de carte graphique.

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

J'ai essayé cela, avec la version 1.0.3, et les performances étaient pires dans certains domaines, meilleures dans d'autres.
après la mise à jour vers la 1.0.4, tout le jeu fonctionne parfaitement, c'est incroyable.

Comment installez-vous 2017 après 2015? J'obtiens des erreurs dans le programme d'installation de 2017 indiquant qu'une autre version est déjà installée. Je ne sais même pas comment désinstaller 2015 maintenant.

J'ai le même problème. Le jeu fonctionne cependant très bien à part quelques gels de temps en temps. Je cours sur un 1080ti sur arc.

D'accord, il se peut donc que j'ai trouvé le correctif pour le bégaiement de la campagne. Aurait bien sûr besoin d'un échantillon plus large que moi. Voici comment je l'ai corrigé sur un nouveau préfixe:

  • Construisez ma propre version Proton (tkg) à partir des sources avec la dernière version de mise en scène de wine qui inclut le correctif du curseur de la souris
  • Installé dotnet40 via protontricks
  • Installé vcrun2015 (voir https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)
  • Dotnet48 installé
  • Installé vcrun2017 (voir à nouveau https://steamcommunity.com/app/261550/discussions/0/2149847049318759493/)

Maintenant, je n'ai pas de bégaiement sur la carte de la campagne, un curseur de souris fixe et l'enregistrement prend quelques secondes. Cela vaudra peut-être la peine d'être essayé par quelqu'un d'autre.

J'ai essayé cela, avec la version 1.0.3, et les performances étaient pires dans certains domaines, meilleures dans d'autres.
après la mise à jour vers la 1.0.4, tout le jeu fonctionne parfaitement, c'est incroyable.

Comment installez-vous 2017 après 2015? J'obtiens des erreurs dans le programme d'installation de 2017 indiquant qu'une autre version est déjà installée. Je ne sais même pas comment désinstaller 2015 maintenant.

J'ai eu le même problème depuis le début. Utilisez simplement protontricks 261550 uninstaller .
Malheureusement, dotnet rend le jeu bien pire pour moi, mais gagner du temps est en effet plus rapide, prend environ 30 secondes.

Vous avez besoin d'un nouveau préfixe (non créé par Steam) pour installer vcrun2015 et vcrun2017 (et dotnet40?). Je les ai installés, puis dotnet48 comme indiqué, mais les économies les plus rapides se font (toujours) au prix d'une instabilité ennuyeuse du framerate (bégaiement rapide). Pour moi, je préfère presque faire une pause pendant que ça économise et aller faire autre chose pour souffrir de problèmes de performance, mais ce n'est que moi.

Est-ce que quelqu'un d'autre a des accidents très fréquents lorsqu'il fait quelque chose impliquant un siège? Cela semble moins probable si l'IA mène le siège, mais lorsque j'attaque ou surtout je défends, il est très probable que le jeu plante (plusieurs fois). Je peux télécharger des journaux plus tard, je voulais juste savoir si c'était quelque chose que d'autres personnes vivaient aussi.

Est-ce que quelqu'un d'autre a des accidents très fréquents lorsqu'il fait quelque chose impliquant un siège? Cela semble moins probable si l'IA mène le siège, mais lorsque j'attaque ou surtout je défends, il est très probable que le jeu plante (plusieurs fois). Je peux télécharger des journaux plus tard, je voulais juste savoir si c'était quelque chose que d'autres personnes vivaient aussi.

Oui; eh bien, je reçois plus de plantages fréquents depuis e1.0.4, et les sièges semblent être un déclencheur. Pour moi; Les IA mènent tous les segies parce que je suis trop petit

Est-ce que quelqu'un d'autre a des accidents très fréquents lorsqu'il fait quelque chose impliquant un siège? Cela semble moins probable si l'IA mène le siège, mais lorsque j'attaque ou surtout je défends, il est très probable que le jeu plante (plusieurs fois). Je peux télécharger des journaux plus tard, je voulais juste savoir si c'était quelque chose que d'autres personnes vivaient aussi.

J'ai une sauvegarde au milieu d'un siège et elle plante au bout de quelques secondes à 100% du temps. Le même jeu de sauvegarde fonctionne bien sur Windows. Après avoir chargé une sauvegarde précédente, j'ai traversé quelques sièges dans le cadre d'une armée et cela ne s'est pas écrasé.

Je n'ai eu aucun crash pendant les sièges, mais lorsque vous démarrez et en déployez un, la souris est bancale, clignote constamment et n'enregistre pas les clics. Alt-tabbing in and out permet d'enregistrer un clic, vous pouvez donc passer l'écran de déploiement.

Le correctif pré-compilé dans l'article d'origine ne fonctionne plus?

@ Ryan-Vablet Ça marche, du moins ça devrait pour autant que je sache. Bien que certains semblent avoir une meilleure expérience avec leur propre version conforme de proton-tkg (et d'autres choses mentionnées dans ce commentaire ).

La chose notable est que l'installation de dotnet48 permet d'économiser beaucoup plus rapidement, ce qui prend quelques minutes pour certains, mais cause des problèmes de performances dans certains cas. Les autres éléments du commentaire peuvent résoudre les problèmes de performances, encore une fois dans certains cas.

Mais en fin de compte, nous ne savons rien de spécifique avec proton-tkg qui pourrait aider ou si c'est vraiment le cas, il est plus à jour, donc il peut très bien y avoir quelque chose d'utile dedans. À jour fait rarement mal au moins.

Pour les plantages, il semble que nous n'avons pas de correctifs solides. Mais il est possible que ce soit simplement des problèmes avec le jeu lui-même, ce qui peut également être le cas avec certains problèmes de performances.

J'ai installé Bannerlord aujourd'hui (e1.0.5) et l'ai joué avec proton-tkg pendant 5 heures. Voici mon expérience:

J'ai d'abord essayé de jouer à Bannerlord sans installer les packages dotnet. J'ai eu beaucoup de bégaiement et aussi des temps de sauvegarde très longs comme prévu. J'ai également connu de longs temps de chargement.

Ensuite, j'ai installé les packages dotnet40 et dotnet48 via protontricks. Gain de temps et temps de chargement considérablement réduits. Le bégaiement a également été légèrement réduit. Le jeu était à peu près jouable à ce stade. J'ai également essayé d'installer vcrun2015 et vcrun2017, mais je n'ai pas pu car ils étaient déjà installés (probablement automatiquement par Steam).

Cependant, après quelques heures, j'ai commencé à avoir des accidents de plus en plus fréquents, généralement en attendant en ville. D'après ce que j'ai lu ici jusqu'à présent, je pense que les plantages sont liés au fait que je n'ai que 8 Go de RAM. Le choix du préréglage de réglage moyen semble l'avoir résolu (il n'y a pas eu de crash depuis) ​​et a également entraîné moins de bégaiement.


Informations système

OS: Arch Linux
KERNEL: 5.5.13-arch2-1
CPU: AMD Ryzen 5 2600 Six-Core
GPU: Radeon RX Vega 56
GPU DRIVER: 4.6 Mesa 20.0.4
RAM: 8 GB

mise à jour jusqu'à 1.0.5 (ubuntu 19.10)
il fonctionne parfaitement, pas de problèmes de performances ou de plantage, avec les renommés de managedstarter, mais sans aucun protontrick; en utilisant le proton personnalisé de yellowapple (dans la description du problème)
si j'installe dotnet40 + 48 pour contourner le problème d'économie, les performances sont de la merde et le jeu n'est pas vraiment jouable. J'adorerais essayer cette solution de contournement tkg, mais apparemment, c'est une chose uniquement archivée? les deux vcruns sont installés par défaut.

J'ai pu passer un siège ou deux (dirigé par l'IA) sur le dernier patch avec les étapes décrites par YellowApple ci-dessus. Je modifierai ce commentaire lorsque je jouerai ensuite et ferai un siège dirigé par un joueur.

Après la mise à jour vers 1.05 (en utilisant le proton YellowApple, aucune installation dotnet), j'ai commencé à planter sur l'écran de butin après avoir combattu des pillards et au début d'une grande bataille sur le terrain. Le premier s'est produit environ 3 fois, le dernier une fois (j'ai arrêté d'essayer après). Il y avait quelques nouvelles erreurs dans le journal, et après les plantages, le jeu était toujours en cours de lecture (le journaliste du crash s'est également écrasé):

[000000000000004A:] EXCEPTION handling: System.IO.FileNotFoundException: Could not load the file 'TaleWorlds.PSAI.XmlSerializers'.
...
[000000000000003F:] EXCEPTION handling: System.PlatformNotSupportedException: System.Management currently is only supported for Windows desktop applications.

Mettre à jour:
J'ai redémarré mon ordinateur, gagné un combat sur une sauvegarde précédente, rechargé celui qui s'était écrasé et me suis engagé dans un combat différent sans problème.

mise à jour jusqu'à 1.0.5 (ubuntu 19.10)
il fonctionne parfaitement, pas de problèmes de performances ou de plantage, _avec_ les renoms de managedstarter, mais _sans_ aucun protontricks; en utilisant le proton personnalisé de yellowapple (dans la description du problème)
si j'installe dotnet40 + 48 pour contourner le problème d'économie, les performances sont de la merde et le jeu n'est pas vraiment jouable. J'adorerais essayer cette solution de contournement tkg, mais apparemment, c'est une chose uniquement archivée? les deux vcruns sont installés par défaut.

@aradapilot Le script de construction proton-tkg fonctionne également très bien sur les systèmes non arch. Assurez-vous simplement d'installer les dépendances de wine-tkg.

J'ai un peu configuré en utilisant la version Proton de dotnet40 puis dotnet48 (qui semble remplacer l'ancienne version), ce qui, je pense, a accéléré les économies, mais les performances étaient médiocres, en particulier sur la carte de la campagne. Une note intéressante, j'ai essayé de désinstaller les verbes dotnet, mais le jeu m'a fait savoir qu'il nécessitait au moins dotnet 4.0. Réinstaller dotnet40 n'était pas suffisant pour que le jeu se lance correctement, et laisse en quelque sorte protontricks penser que la version 4.8 est toujours installée. J'ai désinstallé dotnet40 mais cela ne l'a pas résolu. En fin de compte, j'ai annihilate d l'environnement et n'ai pas installé dotnet, qui a au moins de bien meilleures performances, bien que mes paramètres soient faibles pour mes spécifications, je pense. L'enregistrement prend peut-être 60 secondes plutôt que 30 secondes avec dotnet.

Une autre chose à surveiller est le limiteur de trame! Je pensais que je bégayais même avec des réglages bas, mais il s'est avéré que ma fréquence d'images était supérieure à celle de mon moniteur (60 Hz) mais très saccadée. Le plafonnement pour surveiller le taux de rafraîchissement a beaucoup aidé.

Spécifications:
R5 2600
RX 580 4 Go
16 Go de RAM
Linux Mint 19.3 avec noyau 5.5
Mesa 20.1 de Oibaf PPA

EDIT: Les choses semblent également beaucoup plus stables sans dotnet, donc je pense que je vais m'en tenir à cela. De plus, le mode sans échec semble simplement réinitialiser le test de luminosité et les paramètres graphiques et je n'ai remarqué aucune amélioration de la stabilité, donc je ne prendrais pas la peine de l'activer après un crash.

Donc, je ne sais pas si c'était protontricks 261550 vcrun2019 ou en utilisant le dernier Proton-GE, mais l'un ou l'autre ou les deux ont presque entièrement éradiqué tout bégaiement restant pour moi. Les sauvegardes manuelles prennent quelques secondes, tandis que les sauvegardes automatiques semblent être instantanées; ni causer aucune sorte de retard résiduel. Je reçois également 10 fois le FPS dans l'écran d'inventaire (c'était auparavant assez atroce).

Alors oui, pour quiconque utilise encore ma version: allez plutôt chercher GloriousEggroll ; il devrait fonctionner au moins aussi bien que le mien, sinon mieux (étant donné qu'il intègre également de nombreuses autres améliorations pour d'autres jeux), et il est nettement moins susceptible de boire dans votre crâne ou de manger votre foie. Et pensez également à essayer protontricks 261550 vcrun2019 si vous continuez à avoir dotnet48 bégaiement lié à

Utilisez-vous vcrun2019 avec ou sans dotnet48?

Utilisez-vous vcrun2019 avec ou sans dotnet48?

Avec.

Mon ordre exact des opérations pour le préfixe actuel que j'utilise:

  • J'ai couru le lanceur au moins une fois sous ma construction (pour générer un préfixe)
  • protontricks 261550 uninstall et désinstallez tout
  • protontricks 261550 dotnet40
  • protontricks 261550 vcrun2015
  • protontricks 261550 dotnet48
  • protontricks 261550 vcrun2017
  • Ran le jeu au moins une fois sous ma construction
  • Passé à Proton 5.5-GE-1
  • protontricks 261550 --force vcrun2019 (puisqu'il est techniquement en conflit avec vcrun2015 )
  • A de nouveau couru le jeu et observé une nette amélioration

Je n'ai pas encore testé le chemin plus simple de protontricks 261550 doetnet48 && protontricks 261550 vcrun2019 sur un nouveau préfixe. J'espère que cela fonctionne comme un charme.

Comme je n'arrive pas à sortir de l'enfer des dépendances pour compiler les builds tkg, ces préconstructions sont une bénédiction pour moi personnellement.

Mes approches précédentes:

  • Utilisez la version Proton personnalisée de YellowApples
    ---> Jeu fluide, mais les années 60 permettent de gagner du temps pour un nouveau jeu. ~ 90s après 10h environ dans la sauvegarde.
  • Installez dotnet48
    ---> Petit bégaiement sur la carte de la campagne et gain de ~ 30 s. Absolument jouable pour moi.

Je viens de passer à Proton 5.5-GE-1 et je n'ai apporté aucune autre modification, tout a fonctionné dès la sortie de la boîte. Le bégaiement sur la carte de la campagne a disparu et les temps de sauvegarde sont d'environ 3 secondes.


Cela étant dit, je rencontre encore des plantages ici et là (le jeu par exemple s'est écrasé pendant que j'alt-tab et écrivais ce commentaire) mais cela pourrait être lié à l'accès anticipé. Il est temps d'espérer que cela fonctionne aussi parfaitement pour tout le monde. <3

@evopls Cela pourrait être le même problème que moi:
https://www.reddit.com/r/linuxquestions/comments/fun9qr/did_i_bork_protontkg/

Après avoir construit mon proton, j'ai eu environ 5 secondes de sauvegarde, je n'ai pas encore pleinement joué avec le nouveau temps de sauvegarde 5.5 GE-1, mais l'homme est que ce jeu plante encore une tonne de choses aléatoires plus tard dans le jeu. Même sur Windows, c'est un véritable gâchis, il y a toujours de l'espoir car c'est un accès anticipé et nous jouons essentiellement une version bêta (ce qui semble être une première).

Je suis vraiment impressionné par le fait que malgré la bugginess, le jeu fonctionne très bien. Le dernier patch semble avoir géré le CTD instantané pour certains dialogues et entrer dans la forge et le patch avant cela a considérablement aidé le bégaiement dans la carte de la campagne.

J'ai toujours des problèmes avec seulement dotnet48 avec Proton-GE ou pas, mais avec vcrun2019, c'est généralement stable.

Je n'avais pas besoin des autres étapes Proton-GE + dotnet48 + vcrun2019 fonctionne pour moi

protontricks 261550 dotnet48

protontricks 261550 --force vcrun2019

vcrun2019 seul ne suffisait pas, j'avais besoin des deux dotnet48 + vcrun2019

Je ne semble pas avoir de vcrun2019 à installer. Je viens de réinstaller protontricks-git à partir de aur , donc ça devrait être la version la plus récente. Comment puis-je installer vcrun2019 et / ou être disponible à l'installation depuis Protontricks?

@yarbelk C'est de winetricks, mettez à jour winetricks avec

# protontricks will pass --self-update to winetricks
protontricks 261550 --self-update

edit: Je ne pense pas que je devais faire la mise à jour lorsque j'ai réinstallé le préfixe, peut-être essayer de le réinstaller avec Steam

- self-update récupérera la dernière de git / master voir
https://github.com/Winetricks/winetricks/blob/master/src/winetricks#L1148

Le dernier winetricks est 20191224 (https://github.com/Winetricks/winetricks/releases), c'est ce que j'ai installé. Je suis sur NixOS, donc winetricks - self-update ne fonctionne pas (donc protontricks non plus). Je n'ai toujours pas de vcrun2019 disponible.

Le dernier winetricks est 20191224 (https://github.com/Winetricks/winetricks/releases), c'est ce que j'ai installé. Je suis sur NixOS, donc winetricks - self-update ne fonctionne pas (donc protontricks non plus). Je n'ai toujours pas de vcrun2019 disponible.

Pourquoi être sur NixOS empêche-t-il winetricks --self-update de fonctionner? Peut-être l'exécuter en tant que root - je suis sur Ubuntu et sudo winetricks --self-update fonctionné.

Quoi qu'il en soit, vous pouvez récupérer le dernier code de winetricks git. La version qui a vcrun2019 pour moi est 20191224-next - sha256sum: 472eba29dbf056c87afd39a70426886064040e0bc2c3b63c17baf469b0bf2be2 . Il semble que vcrun2019 ne soit dans aucune version publiée de winetricks, mais --self-update récupère définitivement la dernière (de git, pas des versions).

Voici le commit dans la version "-next" (actuellement non publiée) qui a vcrun2019: https://github.com/Winetricks/winetricks/commit/94edaddc039c205a98c2a620399a741c7a70ce02

Pourquoi être sur NixOS empêche-t-il winetricks --self-update de fonctionner? Peut-être l'exécuter en tant que root - je suis sur Ubuntu et sudo winetricks --self-update fonctionné.

C'est parce que NixOS est un système d'exploitation déclaratif et n'utilise pas la hiérarchie standard du système de fichiers Unix. Il utilise un environnement chroot spécial pour des applications comme Steam qui font des présomptions et veulent contrôler son propre environnement. Le package winetricks est installé dans un chemin en lecture seule dans /nix/store/ où tous les packages sont isolés en fonction de leur hachage. Il lui est impossible de se mettre à jour.

Quoi qu'il en soit, vous pouvez récupérer le dernier code de winetricks git

Je vais essayer de mettre à jour la révision du package et voir si cela fonctionne. Merci!

Edit: Cela a fonctionné dans la mesure où vcrun2019 existe, mais en essayant de l'installer, je me trompe de somme de contrôle:

sha256sum mismatch! Rename /home/ludvig-new/.cache/winetricks/vcrun2019/vc_redist.x86.exe and try again.

@lboklin si vous n'avez pas envie de supprimer des choses, sauvegardez le répertoire mis en cache

mv ~/.cache/winetricks/{,bak.}vcrun2019

puis essayez et installez

@lboklin si vous n'avez pas envie de supprimer des choses, sauvegardez le répertoire mis en cache

mv ~/.cache/winetricks/{,bak.}vcrun2019

puis essayez et installez

J'ai essayé cela sans succès, mais je l'ai exécuté avec wine (je pense que cela l'a installé correctement? J'ai défini toutes les variables d'environnement auxquelles je pouvais penser), mais je m'éloigne du sujet. Ceci est spécifique à mon système et je ne veux pas encombrer ce fil. Je me débrouillerai.

Je continue à avoir ceci maintenant:

d3d_device_->CreateTexture2D at
rglGPU_device::create_texture_from_image
failed!
Invalid parameter.

Last Executed Marker: Only supported with nVidia
Gpus and Windows 10.

(wraps de ligne bizarres ajoutés pour plus de vraisemblance)

J'utilise dotnet48 vcrun2019 (merci @chrisrhayden), et le proton ge-5.5

J'ai un 1080ti, que je soupçonne fortement d'être qualifié de nVidia.

C'est bizarre parce que quiconque obtient cette erreur sur Windows désactive Nvidia / Radeon Sharpening pour une éventuelle correction, la seule chose que je sache qui est à distance proche dans notre panneau Nvidia est le serrage de texture conforme pour les textures 2D sans bordure, qui n'est pas du tout utilisé AUTANT QUE JE SACHE.

Certains disent de revenir à e1.0.3 pour éviter le problème pour le moment, vous pouvez le sélectionner par Propriétés-> BETAS-> Sélectionnez e1.0.3 dans le menu déroulant. Je dirais d'essayer, je reçois des erreurs de plus en plus étranges depuis la dernière mise à jour, alors que j'ai joué pendant 3 heures entières au patch précédent. Ne pas dire que c'est la cause, mais cela ne fait pas de mal de vérifier.

J'ai essayé la version la plus récente de GE avec et sans dotnet48 et vcrun19 . Il semble rester bloqué sur le premier écran de chargement avec ces erreurs:

[0405/100010.058616:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.
eventfd: Too many open files

Parfois, les versions GE ou YellowApple me le feront savoir:

image

Mais après avoir fermé la boîte de dialogue 2 à 3 fois, le jeu se lance et se déroule comme d'habitude. Dire oui ne semble pas fournir d'informations supplémentaires?

Pour en revenir à la version YellowApple avec ces deux verbes installés, elle offre de bonnes performances et des économies d'environ 10-15 secondes, je n'ai pas encore beaucoup testé la stabilité, mais je pense que je vais y aller pour le moment.

Je ne peux plus installer dotnet48 alors que je pouvais auparavant ... Je reçois ce popup:
image

Pourquoi cela arriverait-il maintenant?

Edit: La création manuelle d'un nouveau préfixe, puis l'installation de dotnet48 et 2019 avant le lancement via Steam a fonctionné.

Bonjour @ Gyrfalcon5 , veuillez exécuter ulimit -Hn et vérifiez que cela vous donne une valeur élevée et non 4096.

Bonjour @ Gyrfalcon5 , veuillez exécuter ulimit -Hn et vérifiez que cela vous donne une valeur élevée et non 4096.

Cela me donne 4096. Est-ce un problème? Je pense avoir vu quelque chose ici sur l'augmentation d'une valeur comme celle-là, mais je ne suis pas sûr.

J'ai utilisé les instructions de YellowApple ci-dessus et le jeu fonctionne bien, mais je n'ai toujours pas de curseur de souris fonctionnel. Y a-t-il une étape essentielle que j'ai ratée peut-être? J'étais résigné à n'utiliser que mon contrôleur pour les menus, mais dès que j'arrive à la carte après la création du personnage, je reçois une notification indiquant que je ne peux pas cliquer avec mon contrôleur.

J'ai utilisé les instructions de YellowApple ci-dessus et le jeu fonctionne bien, mais je n'ai toujours pas de curseur de souris fonctionnel. Y a-t-il une étape essentielle que j'ai ratée peut-être? J'étais résigné à n'utiliser que mon contrôleur pour les menus, mais dès que j'arrive à la carte après la création du personnage, je reçois une notification indiquant que je ne peux pas cliquer avec mon contrôleur.

Sur un autre système, cela fonctionne parfois et parfois non. Le redémarrage du jeu a résolu le problème. hausser les épaules

J'ai utilisé les instructions de YellowApple ci-dessus et le jeu fonctionne bien, mais je n'ai toujours pas de curseur de souris fonctionnel. Y a-t-il une étape essentielle que j'ai ratée peut-être? J'étais résigné à n'utiliser que mon contrôleur pour les menus, mais dès que j'arrive à la carte après la création du personnage, je reçois une notification indiquant que je ne peux pas cliquer avec mon contrôleur.

Oui, pour une raison quelconque, la souris ne fonctionne pas non plus sur mon système la première fois que je lance le jeu après la connexion à Steam. Si je relance le jeu, il commence à fonctionner.

J'ai utilisé les instructions de YellowApple ci-dessus et le jeu fonctionne bien, mais je n'ai toujours pas de curseur de souris fonctionnel. Y a-t-il une étape essentielle que j'ai ratée peut-être? J'étais résigné à n'utiliser que mon contrôleur pour les menus, mais dès que j'arrive à la carte après la création du personnage, je reçois une notification indiquant que je ne peux pas cliquer avec mon contrôleur.

Oui, pour une raison quelconque, la souris ne fonctionne pas non plus sur mon système la première fois que je lance le jeu après la connexion à Steam. Si je relance le jeu, il commence à fonctionner.

Que diable? D'accord, ouais. C'est juste la première fois après avoir démarré Steam. Comme c'est curieux.

Mise à jour: J'ai dû supprimer et recréer le préfixe manuellement sans Steam afin d'installer dotnet48 et vcrun2019. Je pourrais alors lancer via Steam et les performances et les économies semblent bien fonctionner (testé seulement pendant une minute jusqu'à présent). C'est avec Proton-GE et winetricks construits à partir de cette révision .

Oui, veuillez lire https://github.com/zfigura/wine/blob/esync/README.esync .

Suivez les instructions là-bas et Proton GE travaille avec de bien meilleures performances! La stabilité pourrait cependant nécessiter un peu de travail, j'ai eu un crash en recherchant un personnage après une minute ou deux. Je peux essayer de supprimer mon préfixe et de réinstaller des éléments pour voir si cela aide, même si je sais que le jeu lui-même est assez instable en ce moment.

EDIT: Rechercher un personnage est un crash super cohérent, avec la sortie suivante lorsque j'exécute Steam à partir de la ligne de commande:

mesa: for the   --simplifycfg-sink-common option: may only occur zero or one times!
mesa: for the   --global-isel-abort option: may only occur zero or one times!
ERROR: ld.so: object '/home/roland/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 5460 for game ID 261550
ERROR: ld.so: object '/home/roland/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
>>> Adding process 5468 for game ID 261550
wine: Unhandled page fault on execute access to 000000001E770198 at address 000000001E770198 (thread 0035), starting debugger...
ERROR: ld.so: object '/home/roland/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

EDIT2: Plus d'informations sur le crash d'un nouvel environnement Proton-GE:

=================================================================
    Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

=================================================================
    Managed Stacktrace:
=================================================================
domain required for stack walk
=================================================================

EDIT 3: réessayer dotnet48 pour voir si cela résoudra l'erreur d'informations supplémentaires.

EDIT 4: La plainte concernant le mono a disparu, mais les problèmes de stabilité avec l'encyclopédie ainsi que le classement de l'arène persistent. Je pense que cela a quelque chose à voir avec le dialogue supplémentaire qui apparaît sur la carte de la campagne, mais je ne suis pas sûr.

Comment installer vcrun2019? quand je lance protontricks 261550 vcrun2019
J'obtiens toujours "Unknown arg vcrun2019"
(j'utilise les derniers protontricks)

Comment installer vcrun2019? quand je lance protontricks 261550 vcrun2019
J'obtiens toujours "Unknown arg vcrun2019"
(j'utilise les derniers protontricks)

Avez-vous également mis à jour winetricks? Je pense que les gens avaient du mal à ce que les protontricks soient à jour mais qu'ils parlaient plus tôt à un winetricks dépassé. Il devrait suffire de faire winetricks --self-update , vous aurez peut-être besoin de sudo.

Obtention de nombreux plantages avec proton-GE, dotnet48 et vcrun2019.
Sortie dans la borne:

wine: Unhandled exception 0xe0434352 in thread 3f at address 000000007B00FDCE (thread 003f), starting debugger...

Éditer:
Je pense que l'activation du mode sans échec (il vous demande quand vous vous relancez après son crash) a aidé à éviter un crash inévitable dans ma campagne (un événement l'a probablement déclenché).

Modifier 2:
Un zoom arrière sur la carte de la campagne provoque souvent un crash (au moins 3 fois au cours de la dernière heure).

Modifier 3:
C'est fondamentalement injouable. A eu plus de 5 accidents au cours de la dernière demi-heure. Ne voyant rien d'utile dans la sortie; juste

wine: Unhandled exception 0xe0434352 in thread 74 at address 7B00DE67 (thread 0074), starting debugger...

Modifier 3:
Ok, maintenant je me suis écrasé dans le menu des paramètres:

wine: Unhandled page fault on execute access to 0000000000000000 at address 0000000000000000 (thread 003b), starting debugger...

Parce que le jeu oublierait soudainement et refusait d'enregistrer mes paramètres, j'ai ajouté des autorisations de lecture du répertoire des sauvegardes et des paramètres au groupe (je le garde lié symboliquement à l'extérieur du préfixe afin de ne pas l'effacer accidentellement). Après cela, le jeu s'est souvenu de mes paramètres. Peut être lié au dernier crash dans le menu des paramètres.

@lboklin
J'ai également des plantages toutes les quelques minutes 5-30 lors de l'utilisation de dotnet48 et vcrun2019 et toujours sur la carte du monde.
proton-GE et proton-tkg ont ce problème, proton-GE n'a rien amélioré pour moi.

@craftyguy Sauf si vous voulez que winetricks se mette à jour, cela dépend de la façon dont vous l'avez installé à l'origine.

$ winetricks --self-update
------------------------------------------------------
You don't have the proper permissions to run this command. Try again with sudo or as root.
------------------------------------------------------

Si vous l'avez obtenu de votre gestionnaire de paquets, il se trouve probablement dans /usr/bin et vous _do_ avez besoin d'un accès root pour le mettre à jour.

Juste une suggestion. Si quelqu'un a besoin d'autorisations root pour mettre à jour winetricks. Utilisez sudo -E pour préserver votre environnement.

@lboklin

Je vais essayer de mettre à jour la révision du package et voir si cela fonctionne. Merci!

Bonjour, camarade utilisateur de nixos - comment avez-vous fait cela?

"comment mettre à jour winetricks" sur la distribution de votre choix semble hors sujet ici. Allez demander dans le forum public de votre distribution, ou installez winetricks localement pour votre utilisateur.

@lboklin

Je vais essayer de mettre à jour la révision du package et voir si cela fonctionne. Merci!

Bonjour, camarade utilisateur de nixos - comment avez-vous fait cela?

Bien que je convienne que ce soit hors-sujet, je prendrai juste un moment pour répondre pour vous faire gagner du temps.

  1. cloner le repo nixpkgs
  2. cd dedans
  3. éditez pkgs / misc / emulators / wine / sources.nix comme ci-dessous
  4. nix-env -f . -iA winetricks
diff --git a/pkgs/misc/emulators/wine/sources.nix b/pkgs/misc/emulators/wine/sources.nix
index 0e3eb2ce698..aeb0cdef883 100644
--- a/pkgs/misc/emulators/wine/sources.nix
+++ b/pkgs/misc/emulators/wine/sources.nix
@@ -56,10 +56,10 @@ in rec {

   winetricks = fetchFromGitHub rec {
     # https://github.com/Winetricks/winetricks/releases
-    version = "20191224";
-    sha256 = "07q3zh2i3xqzpg46ljarhq3a4ha9zwpc6jqzvly0kfglkh3b3v66";
+    version = "20191229";
+    sha256 = "0vzb9fxnrmbv1x86q7ri0xx4slvmbyjsf59y9hl48gxyr5kld68q";
     owner = "Winetricks";
     repo = "winetricks";
-    rev = version;
+    rev = "94edaddc039c205a98c2a620399a741c7a70ce02";
   };
 }

J'ai un nouveau système avec:

Bannerlord fraîchement installé de Steam
vin fraîchement installé
winetricks fraîchement construit à partir de la source
Protontricks nouvelle installation en utilisant les winetricks ci-dessus

❯ wine --version
wine-5.0
❯ winetricks --version
20191224-next - sha256sum: f183161a93a92f2fe38ec90b723055d5a2ca691c85400874879b0ef779a7f46e
❯ protontricks --version
protontricks (1.4.1)
❯ rm -rf ~/.steam/steam/steamapps/compatdata/261550
❯ rm -rf ~/.wine

J'ai installé la version 5.5-GE-1 de proton et l'ai déplacée vers .steam/root/compatibilitytools.d

Puis j'ai couru:

❯ steam # Launched game from steam with Proton-5.5-GE-1 selected
...
Proton: Upgrading prefix from None to 5.5-GE-1 ($HOME/.local/share/Steam/steamapps/compatdata/261550/)
...
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'ManagedStarter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
File name: 'ManagedStarter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'ManagedStarter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.

❯ cp ~/.steam/steam/steamapps/common/Mount\ \&\ Blade\ II\ Bannerlord/bin/Win64_Shipping_Client/Bannerlord.exe ~/.steam/steam/steamapps/common/Mount\ \&\ Blade\ II\ Bannerlord/bin/Win64_Shipping_Client/ManagedStarter.exe
❯ cp ~/.steam/steam/steamapps/common/Mount\ \&\ Blade\ II\ Bannerlord/bin/Win64_Shipping_Client/Bannerlord_BE.exe ~/.steam/steam/steamapps/common/Mount\ \&\ Blade\ II\ Bannerlord/bin/Win64_Shipping_Client/ManagedStarter_BE.exe

À ce stade, le jeu se lance

❯ killall wineserver
❯ protontricks 261550 dotnet48
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20191224-next - sha256sum: 21f89159ef089f5e8c70568b34c40973f6cdc7de04832f3d79c9b74fcbfc32ed with wine-5.0 and WINEARCH=win64
Executing w_do_call dotnet48
# ..... fails

Dois-je en quelque sorte indiquer que la version est 32 bits? Le répertoire est créé par Steam, dois-je le créer manuellement avec winecfg en utilisant WINEARCH = win32? Il semble que bannerlord soit 64 bits, donc je ne sais pas comment cela fonctionnerait?

@TannerYoung semble utiliser la version 1.0.0 du jeu.

Vous pouvez mettre à jour le jeu vers la dernière version ou renommer ManagedStarter.exe en ManagedStarter.exe.old (ou quelque chose de vraiment), puis copier / symlink / renommer Bannerlord.exe en ManagedStarter.exe pour résoudre votre problème.

Pour les personnes ayant encore des problèmes de plantage après l'installation des différentes versions de vcrun, vérifiez votre version de Windows dans winecfg. Le mien a été configuré sur WinXP lors de l'une des installations et le retour à Windows 10 a corrigé beaucoup de mes plantages.

J'ai eu beaucoup de chance jusqu'à présent avec dotnet472 et non dotnet48:

protontricks 261550 dotnet472

J'utilise Proton de Valve (@ proton_5.0-next tag), avec le patch de @YellowApple de wine-staging appliqué, et non ces builds aléatoires de Proton que les gens distribuent. Je n'ai pas non plus installé vcrun2019.

Les sauvegardes sont d'environ 5 secondes pour moi, et le jeu ne s'est pas planté pour moi depuis que j'utilise cette configuration (j'utilise la dernière version corrigée du jeu avec le correctif d'aujourd'hui).

Il convient de souligner que les dépendances de jeu publiées sur le forum par Taleworlds sont .NET 4.7.2, vcrun 2015 & 2017: https://forums.taleworlds.com/index.php?threads/installing -missing-necessaire-dependencies. 407126 /

Il n'y a rien d'avoir .NET 4.8 ou vcrun 2019.

@craftyguy : merci beaucoup pour ça! avec dotnet48, le jeu fonctionnait plutôt bien mais chaque campagne finirait par s'écraser / se figer, au point où jouer plus loin était presque impossible. Avec dotnet472, ce problème semble être complètement résolu. De plus, je vois maintenant des notifications à droite de l'écran (comme quand quelqu'un lève une armée quelque part), ce qui n'était pas le cas avec dotnet48 - je ne savais même pas que la fonctionnalité existait.

Je ne vois pas non plus de bégaiement sur la carte (même si je ne l'ai jamais fait avec dotnet48).

Peut confirmer les découvertes de protontricks 261550 dotnet472 suffisent à corriger à la fois le bégaiement et les longs temps de sauvegarde. Belle prise!

Je remarque que je reçois un plantage reproductible de manière cohérente lors de l'affichage de la page de l'encyclopédie pour une ville dans une sauvegarde existante et des plantages intermittents dans l'écran d'inventaire, à la fois sur mon préfixe précédent (avec vcrun201(5|7|9) et dotnet48 ) et le courant (avec seulement dotnet472 ). Je vais essayer un nouveau jeu ( soupir ) et voir si ça persiste.

Je ne sais pas quoi penser de ce qui se passe, de mon côté. J'ai l'impression d'être de retour à la case départ, où l'entrée de la souris est complètement non fonctionnelle quelle que soit la version de proton que je lance, quels que soient les packages Windows que j'installe. Même l'ancienne version de YellowApple, qui fonctionnait très bien avant, ne fonctionne pas.

Je vais devoir essayer ce dotnet472, voir s'il aide à résoudre mes problèmes avec ces plantages aléatoires sur un nouveau jeu. Figurez-vous que mon ancien jeu est juste en panne, car il a subi plusieurs mises à jour maintenant. Je l'ai fait jouer pendant quelques heures et certains de mes amis sous Windows signalent les mêmes plantages sur des sauvegardes plus anciennes.

Avec dotnet472, je peux également confirmer que la sauvegarde est rapide, mais je me suis écrasé avant de pouvoir faire des observations substantielles sur les performances, donc cela semble à peu près aussi difficile à jouer qu'avec vcrun2019 et dotnet48.

Mettre à jour:
Il fonctionne bien et les économies sont rapides comme indiqué, mais en effet la stabilité n'est pas excellente. Beaucoup de plantages sur la carte de la campagne.

Offtopic, mais je souhaite aider rapidement tout utilisateur NixOS en partageant ce script pour ma configuration de préfixe actuelle: https://gist.github.com/lboklin/c735c867a00fbb2d30bb89dbcd910c03

J'aurais dû mentionner: mon jeu sans plantage était seulement après le démarrage d'une nouvelle campagne sur 1.0.5 (avant le correctif suivant mais après la mise à jour 1.0.5). J'ai également remarqué des temps de chargement légèrement plus longs (+ ~ 50%) entre les scènes avec dotnet472 par rapport à dotnet8, ce qui n'est vraiment pas un gros problème étant donné la stabilité considérablement accrue.

@Ampsersanddd d' autres personnes l'ont mentionné mais il est courant que le jeu ne réponde pas à l'entrée de la souris même après le correctif lors du premier lancement pour une raison quelconque; le redémarrer le corrige. C'est peut-être votre problème?

dotnet472 plante avec les fichiers de sauvegarde à partir de la version 1.0.4 (cela a pris cependant environ 10 minutes alors que j'étais dans le menu de la ville) mais offre également de très bonnes performances (testé avec proton-GE). Je testerai plus tard si cela est également vrai pour un nouveau jeu utilisant la version 1.0.5.

METTRE À JOUR:

J'ai joué environ 30 minutes avec un nouveau jeu jusqu'à ce qu'il tombe en panne lors de l'ouverture du menu de la ville.

Même avec une nouvelle campagne, c'est assez difficile pour moi. La plupart du temps, j'obtiens le code d'exception 0000000c, bien que le dernier crash (plus un plus tôt aujourd'hui) soit le code d'exception 6ba.

En revanche, au moins, j'ai pu confirmer que le presse-papiers fonctionne (en utilisant bannerlord.party pour créer une bannière sympa ). Alors tu sais, ça ne peut pas être tout mauvais.

Quelqu'un a-t-il trouvé un moyen d'obtenir un journal généré par le jeu? Il y a mention de fichiers journaux (à savoir rgl_log.txt ou quelque chose comme ça) sur les forums, mais je n'arrive pas à les trouver nulle part. L'outil de rapport de plantage semble également complètement embrouillé, et les journaux Proton ne donnent pas de traces de pile significatives.

Je pense qu'il pourrait être utile de savoir comment supprimer complètement un préfixe pour proton. Je sais que c'est un peu hors sujet, mais étant donné le nombre de fois que les gens le font, cela peut réduire les rapports de bogues causés par kruft.

Je sais que je ne suis pas sûr de ce que je fais: mais je supprime le répertoire ~/.steam/steam/steamapps/compatdata/261550/ et je relance le jeu pour le recréer. est-ce suffisant?

Je sais que je ne suis pas sûr de ce que je fais: mais je supprime le répertoire ~/.steam/steam/steamapps/compatdata/261550/ et je relance le jeu pour le recréer. est-ce suffisant?

Oui, c'est tout ce qu'il y a à faire. Personnellement, j'aime renommer à la place, pour pouvoir basculer entre les préfixes et tester rapidement les choses (et aussi pour faciliter l'extraction de mes sauvegardes et configurations), mais vous faites vous.

Et en parlant de cela: cela ressemble à un nouveau préfixe (sans aucun protontricks du tout) est moins accidentel pour moi, mais il a toujours le bogue de sauvegarde de plusieurs minutes et réintroduit un peu de bégaiement dans le carte de campagne. Vous en gagnez, vous en perdez, je suppose, lol

Plusieurs choses:

1) Je suis maintenant dans un état étrange qu'avec un nouveau préfixe, je ne peux même plus lancer le lanceur. Je soupçonne également que certaines ressources ne nettoient pas correctement lorsqu'elles se bloquent (en raison d'une croissance suspecte de l'utilisation de la mémoire que je n'ai pas essayé de déboguer activement au-delà de ps aux | grep Mount et ps aux | grep wine et en essayant pour les amener à quitter proprement. Je vais redémarrer le système mais je veux l'écrire avant de le faire.

2) lors de l'installation des paquets donet et vcrun, je continue à voir «il ne semble pas que mono est installé», ce qui est le cas (6.4, arch linux); est-ce quelque chose qui brise les protontricks ou le comportement attendu?

3) Ne tapez pas pendant que protontricks est exécuté. vous appuierez sur Entrée juste quand il vous demandera `` installez cette chose qu'il a fallu une éternité pour y arriver '' et vous l'annulerez.

4) @YellowApple j'aurais pu jurer que j'ai vu un journal passer de vous, il avait dxvk dans la sortie: utilisez-vous une version spécifique dudit dxvk? Étant donné les bugs bizarres de need nvidia card lorsque j'exécute une carte nvidia ... je me demande s'il y a quelque chose qui me manque.

@yarbelk Le https://github.com/ValveSoftware/Proton/issues/3706#issuecomment -609480224

Cela étant dit, je reçois également les fréquents plantages de cartes de campagne. Les seules choses que j'ai changées étaient le paramètre ci-dessus et le patch M&B lui-même. Je ne sais pas si c'était 1.0.3 ou 1.0.4 où cela fonctionnait bien, mais ces plantages de campagne sont complètement nouveaux pour moi. Dotnet472 ou dotnet480 n'y font aucune différence non plus.

Pour les gens qui rencontrent des tonnes de problèmes d'instabilité étranges, je pense qu'il vous suffit de supprimer votre préfixe de vin Bannerlord, de vérifier les fichiers du jeu (assurez-vous que vous êtes à jour) et d'installer vcrun2019 et dotnet48. Assurez-vous également de ne pas avoir le remplacement global pour SteamPlay (page principale des paramètres de Steam -> SteamPlay) et utilisez la dernière version de Proton-GE.

Si vous faites tout cela et que vous rencontrez toujours des problèmes, mettez également à jour votre pilote graphique. Pour Nvidia, vous devez exécuter la dernière version binaire de nvidia.com; si cela est déjà emballé pour votre distribution, tant mieux. Pour AMD, vous devez exécuter les derniers binaires Catalyst ou une version git récente de mesa / libdrm / AMD DDX et un noyau Linux récent.

Le jeu fonctionne très bien sans aucun problème majeur pour moi. J'obtiens 1-2 secondes de problèmes la première fois qu'une animation de combat ou une nouvelle tenue est chargée sur le terrain, mais cela interrompt tout le jeu, donc ce n'est pas comme si je me battais désavantagé quand cela se produisait, et cela ne se reproduira pas si je continue combattre les mêmes ennemis. Une sorte de cache de shader lié à des effets de tissu réalistes, probablement.

Publiez également le GPU dont vous disposez lorsque vous signalez des problèmes. Je suis sur un 2080 Ti. J'ai pu jouer sans arrêt pendant 4 heures sans crash et avec de bonnes performances.

@YellowApple

Les journaux de jeu se trouvent dans le préfixe wine ici: </261550 prefix>/pfx/drive_c/ProgramData/Mount and Blade II Bannerlord/logs/

par exemple ~/.steam/steam/steamapps/compatdata/261550/pfx/drive_c/ProgramData/Mount and Blade II Bannerlord/logs

Si l'uploader crash fonctionnait (ce qui est vraiment dommage que ce ne soit pas le cas ...), il semble qu'il téléchargerait les artefacts trouvés ici: <261550 prefix>/pfx/drive_c/ProgramData/Mount and Blade II Bannerlord/crashes/

Il semble que le jeu crée un répertoire dans le répertoire crashes chaque fois qu'il plante, et inclut quelques journaux différents + la sauvegarde de la partie du crash.

Eh bien, je suis allé plus loin avec la version la plus récente de Proton-GE et l'installation de dotnet472 (qui a installé rétroactivement environ 5 à 6 versions précédentes).

Je reçois le lanceur maintenant, mais le jeu gèle toujours l'ordinateur entier après avoir créé le personnage. Je peux entendre de la musique / des sons en arrière-plan, mais rien. Je l'ai laissé reposer pendant un moment, pensant qu'il fallait juste rattraper son retard. Rien. Un arrêt brutal est la seule solution.

Eh bien, je suis allé plus loin avec la version la plus récente de Proton-GE et l'installation de dotnet472 (qui a installé rétroactivement environ 5 à 6 versions précédentes).

Je reçois le lanceur maintenant, mais le jeu gèle toujours l'ordinateur entier après avoir créé le personnage. Je peux entendre de la musique / des sons en arrière-plan, mais rien. Je l'ai laissé reposer pendant un moment, pensant qu'il fallait juste rattraper son retard. Rien. Un arrêt brutal est la seule solution.

Quelle version de distribution, de GPU et de pilote graphique?

Ubuntu 18.04, RX 580 et pilotes amd stock / par défaut. J'ai aussi wine / winetricks / mesa / vulkan à jour.

C'est seulement ce jeu, actuellement, qui ne fonctionne pas, mais cela ne veut pas dire que ce n'est pas mon système, il suffit de le lancer.

Ubuntu 18.04, RX 580 et pilotes amd stock / defautl. J'ai aussi wine / winetricks / mesa / vulkan à jour.

C'est seulement ce jeu, actuellement, qui ne fonctionne pas, mais cela ne veut pas dire que ce n'est pas mon système, il suffit de le lancer.

Ubuntu 18.04 utilise maintenant des pilotes Mesa (open source) plutôt anciens. Pouvez-vous essayer de passer aux pilotes AMD Adrenaline (anciennement appelés Catalyst ou fglrx)?

Si vous souhaitez vous en tenir à la pile graphique open source, vous pouvez également essayer le PPA graphique d'oibaf: https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

La pile graphique open source vieillit très mal. Cela est en grande partie dû au rythme extrêmement rapide des améliorations. Un pilote graphique open source d'un an est comme une voiture de 80 ans. Complètement et totalement obsolète. À ce stade, je pense sérieusement que la faute est avec la pile graphique open source pour votre problème.

Je suis sur Ubuntu 20.04 (qui est principalement similaire à 18.04 à bien des égards, en fait) et la principale différence est que j'utilise les pilotes binaires Nvidia. Le jeu fonctionne très bien. Si la mise à jour de la pile graphique open source d'Oibaf ne le résout pas pour vous, j'essaierais le pilote binaire Adrenaline.

La pile graphique open source vieillit très mal.

Ne blâmez pas Mesa pour une distribution merdique (ubuntu) qui en expédie d'anciennes versions. Il existe des PPA publics qui vous permettront d'installer un nouveau Mesa sur votre ancienne distribution obsolète.

J'utilise un RX 580 sur Mesa 20.0 (et même la branche principale de Mesa) sans blocage graphique comme ils l'ont décrit.

J'utilise un RX 580 sur Mesa 20.0 (et même la branche principale de Mesa) sans blocage graphique comme ils l'ont décrit.

Je montre que je suis sur Mesa 20.0.0-devel, mais si c'est la mauvaise version et qu'il y en a une différente / meilleure, je ne suis pas du genre à ignorer les conseils des autres. Je vérifie également l'autre PPA, car je pensais l'avoir auparavant, mais je l'aurais peut-être retiré il y a quelque temps.

La pile graphique open source vieillit très mal.

Ne blâmez pas Mesa pour une distribution merdique (ubuntu) qui en expédie d'anciennes versions. Il existe des PPA publics qui vous permettront d'installer un nouveau Mesa sur votre ancienne distribution obsolète.

J'utilise un RX 580 sur Mesa 20.0 (et même la branche principale de Mesa) sans blocage graphique comme ils l'ont décrit.

Oh, je ne blâme pas du tout Mesa. Le fait est que Mesa d'aujourd'hui est 1000% meilleur (plus fonctionnel et plus complet) que Mesa d'il y a un an. Cela a été vrai pour chaque année d'existence de la pile graphique open source. Je justifiais simplement pourquoi il n'est pas acceptable de s'appuyer sur n'importe quelle version "stable" (aka _stale_) de Mesa une distribution LTS arrive à être livrée, tout en essayant de jouer à des jeux haut de gamme.

Edit: Là encore, je n'ai jamais eu beaucoup de succès en exécutant de "vrais" jeux (c'est-à-dire quelque chose avec plus de détails graphiques que Stellaris ou Team Fortress 2) avec la pile graphique open source. J'ai essayé une version de mars git master à partir du PPA d'oibaf avec une Radeon VII avec Kingdom Come: Deliverance, Elder Scrolls Online, PULSAR: Lost Colony, Stellaris et plusieurs autres jeux. Les performances étaient acceptables sur ESO et Stellaris mais infiniment lentes sur les autres (5 fps ou moins). J'ai changé l'eGPU d'une Radeon VII à une 2080 Ti et j'ai utilisé le pilote binaire Nvidia, et soudainement, les performances sont bien supérieures à 60 images par seconde dans toutes les scènes et plus de 100 souvent. Nuit et jour.

Si vous utilisez la pile graphique open source, vous êtes quasiment limité à jouer aux jeux qu'il prend en charge correctement, ce qui représente probablement environ 20 à 50% de tous les jeux existants (estimation approximative). Si vous utilisez les pilotes binaires Nvidia, plus de 95% des jeux fonctionnent bien. J'espère que les pilotes open source en arriveront au point où ils sont aussi bons ou meilleurs que les binaires un jour, mais ce n'est pas aujourd'hui.

J'ai donc remarqué cela , dans la section support des forums en disant que parfois Steam n'installe pas tous les deps nécessaires.

Je ne sais pas si .net Core est inclus (ou supposé l'être) avec dotnet472 , mais j'ai utilisé le lien vers à partir de ce post pour installer cette version spécifique et il semble que la plupart de mes plantages ont disparu! Je reçois toujours des blocages occasionnels, surtout lorsque des choses comme les textures se chargent pour la première fois à chaque session, mais je peux même remonter le fameux classement de l'arène sans tomber en panne maintenant!

Pour ceux qui voudraient l'essayer, j'ai fait quelque chose comme ceci:

$ wget https://download.visualstudio.microsoft.com/download/pr/cd223083-8c0e-4963-9fcd-fcf01a55e56c/15500e764899442ed6e014687caa34e9/dotnet-runtime-2.1.17-win-x64.exe

$ export STEAM_COMPAT_DATA_PATH=/games/steamapps/compatdata/261550/

$ cd ~/.steam/steam/compatibilitytools.d/proton_butterlord/

$ ./proton run ~/dotnet-runtime-2.1.17-win-x64.exe

où le chemin de compatdata serait le chemin vers votre dossier de compatdata bannerlord et le cd est le répertoire du proton que vous utilisez.

Si vous souhaitez vous en tenir à la pile graphique open source, vous pouvez également essayer le PPA graphique d'oibaf: https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

Eh bien merde, si réinstaller ceux-ci ne semble pas faire l'affaire! En fait, je suis arrivé au premier dialogue après la création du personnage! Je vais en tester plus, mais je voulais juste le lancer là-bas, cela aurait pu être la solution (frapper du bois).

/Éditer
Je voudrais juste ajouter les remerciements d'un inconnu sur Internet à tous ceux qui ont résolu les problèmes et proposé des solutions pour cela!

@Aliervo - Donc, après la dernière commande et cela semble échouer -

ProtonFixes [12023] INFO: Exécution de protonfixes
ProtonFixes [12023] INFO: Exécution de vérifications
ProtonFixes [12023] INFO: Toutes les vérifications ont réussi
ProtonFixes [12023] INFO: Aucun protonfix trouvé pour INCONNU (261550)

@yarbelk Le # 3706 (commentaire)

Cela étant dit, je reçois également les fréquents plantages de cartes de campagne. Les seules choses que j'ai changées étaient le paramètre ci-dessus et le patch M&B lui-même. Je ne sais pas si c'était 1.0.3 ou 1.0.4 où cela fonctionnait bien, mais ces plantages de campagne sont complètement nouveaux pour moi. Dotnet472 ou dotnet480 n'y font aucune différence non plus.

Malheureusement; la configuration de Windows 10 n'a pas arrêté le crash de nvidia pour moi (avec un préfixe vide aussi)
au début d'un nouveau jeu avant la création du personnage: crash de nvida. redémarrer. juste après avoir remporté le Tornement: nvidia crash (10 minutes).

@ jake-hedges At-il laissé tomber l'invite après cela? Je me souviens avoir vu ceux-ci, mais après une seconde, il a fonctionné et a fait apparaître le programme d'installation.

Edit: Je viens de lui donner un autre essai dans un préfixe propre, j'ai

ProtonFixes[32252] INFO: Running protonfixes
ProtonFixes[32252] INFO: Running checks
ProtonFixes[32252] INFO: All checks successful
ProtonFixes[32252] INFO: No protonfix found for UNKNOWN (261550)
ProtonFixes[32252] INFO: Creating MS Core font links in /games/Steam/steamapps/compatdata/261550/pfx/drive_c/windows/Fonts

mais ensuite, après quelques secondes, la boîte de dialogue d'installation est apparue et m'a permis d'installer.

Vérifiez /your/path/to/compatdata/261550/pfx/drive_c/Program\ Files/ pour un dossier dotnet au cas où il ferait une installation silencieuse. S'il n'y a rien, essayez de l'exécuter à nouveau et laissez-le reposer pendant une minute ou deux pour voir si la fenêtre d'installation apparaît.

@Aliervo - Donc, après la dernière commande et cela semble échouer -

ProtonFixes [12023] INFO: Exécution de protonfixes
ProtonFixes [12023] INFO: Exécution de vérifications
ProtonFixes [12023] INFO: Toutes les vérifications ont réussi
ProtonFixes [12023] INFO: Aucun protonfix trouvé pour INCONNU (261550)

J'ai eu cette erreur aussi, mais cela a fonctionné en ajoutant "pfx /" à la fin

$ export STEAM_COMPAT_DATA_PATH = / games / steamapps / compatdata / 261550 / pfx /

Cela n'a cependant rien fait pour moi. Obtenir les mêmes plantages aléatoires.

Edit: NVM je me suis mal exprimé. Je pensais que ça corrigeait, mais j'ai mal lu
Erreur lors de l'utilisation de 261550 /

ProtonFixes [25930] INFO: Exécution de protonfixes
ProtonFixes [25930] INFO: Exécution de vérifications
ProtonFixes [25930] INFO: Toutes les vérifications ont réussi
ProtonFixes [25930] INFO: Aucun protonfix trouvé pour INCONNU (261550)

Erreur lors de l'utilisation de 261550 / pfx /

./proton run ~ / dotnet-runtime-2.1.17-win-x64.exe Proton: mise à niveau du préfixe de None à 5.5-GE-1 (/ run / media / m / 850EVO / Games / SteamLibrary / steamapps / compatdata / 261550 / pfx //)
ProtonFixes [25999] INFO: Exécution de protonfixes
ProtonFixes [25999] INFO: Exécution de vérifications
ProtonFixes [25999] INFO: Toutes les vérifications ont réussi
ProtonFixes [25999] INFO: Aucun protonfix trouvé pour INCONNU (261550)
ProtonFixes [25999] INFO: Création de liens de polices MS Core dans / run / media / m / 850EVO / Games / SteamLibrary / steamapps / compatdata / 261550 / pfx / pfx / drive_c / windows / Fonts
Pour une raison quelconque, il a ajouté les liens de police MS Core lorsque j'ai utilisé pfx, mais le programme d'installation n'a pas démarré.

Sans dotnet472 ou dotnet48, le lanceur ne fonctionnera pas et je dois renommer le jeu .exe comme suggéré au début du fil de discussion pour lancer le jeu sans le lanceur, mais chaque sauvegarde prend 30 à 90 secondes. Cela semble un peu plus stable, mais le jeu s'enregistre trop souvent, me forçant à attendre plus d'une minute toutes les 5 à 10 minutes, en particulier en début de partie.

Avec dotnet, le lanceur fonctionne et la sauvegarde prend 1 à 5 secondes, mais il peut planter de manière aléatoire sur la carte du jeu ou avant de commencer des conversations ou des batailles. C'est surtout jouable. De temps en temps, je suis capable de jouer une heure ou plus avant que mon FPS ne tombe à 0,5 dans les conversations et les batailles (ce qu'un redémarrage corrige) ou qu'il se bloque.

@EmquCC Vérifiez la version de Windows sur laquelle votre préfixe est défini.

Un des scripts vcrun le définit sur XP et un autre sur 7. Je me souviens avoir beaucoup planté lorsque mon préfixe était défini sur XP et il y a des rapports sur les forums de problèmes avec Windows 7, donc je recommande d'aller avec 10.

De plus, la 1.0.6 vient de tomber, je vais donc lancer un nouveau préfixe et m'assurer que tout fonctionne toujours.

@EmquCC Vérifiez la version de Windows sur laquelle votre préfixe est défini.

Un des scripts vcrun le définit sur XP et un autre sur 7. Je me souviens avoir beaucoup planté lorsque mon préfixe était défini sur XP et il y a des rapports sur les forums de problèmes avec Windows 7, donc je recommande d'aller avec 10.

De plus, la 1.0.6 vient de tomber, je vais donc lancer un nouveau préfixe et m'assurer que tout fonctionne toujours.

Merci :) J'ai changé pour Windows 10 hier, mais j'ai oublié de le vérifier aujourd'hui. J'ai édité mon message, car j'ai mal lu. Lorsque j'ai ajouté pfx, il a créé des liens pour les polices MS Core, mais le programme d'installation n'a pas démarré. Je vais créer un nouveau préfixe et réessayer avec la version 1.0.6, et je vous répondrai

Edit: Le nouveau RC pour Proton 5.0.6 est tombé en même temps que la 1.0.6. Je ne vois pas encore de journal des modifications pour cela, mais je vais aussi essayer. Pour ceux qui veulent essayer les versions de test de Proton, cliquez avec le bouton droit sur Proton 5.0 dans la bibliothèque Steam> propriétés> Betas> activez "suivant -"

. Pour ceux qui veulent essayer les versions de test de Proton, cliquez avec le bouton droit sur Proton 5.0 dans la bibliothèque Steam> propriétés> Betas> activez "suivant -"

À moins qu'ils n'aient ajouté le correctif d'entrée de la souris dans la version 5.0.6, vous devrez le corriger vous-même ou vous perdrez la possibilité de cliquer avec la souris.

@craftyguy Oui,

@Aliervo @ jake-hedges J'étais toujours incapable d'installer dotnet-runtime-2.1.17-win-x64 avec cette commande. Cependant, j'ai réussi à l'installer en utilisant protontricks --gui , puis "Exécuter l'explorateur" et exécuter le .exe depuis l'explorateur. Je vais le tester maintenant

Edit: Maintenant, mon jeu plante avant d'appuyer sur l'écran de menu. Redémarrage avec un nouveau préfixe ^^

Edit 2: Chargé maintenant sur un nouveau préfixe avec dotnet-runtime installé. C'était probablement une erreur d'utilisateur de mon côté :)

Juste un heads-up, le dernier Proton-GE, 5.5-1 , a déjà fusionné les correctifs de souris de wine-staging.

Juste un heads-up, le dernier Proton-GE, 5.5-1 , a déjà fusionné les correctifs de souris de wine-staging.

En utilisant ces correctifs, je ne contrôle toujours que la souris, peut-être 1 lancement sur 10.

Juste un heads-up, le dernier Proton-GE, 5.5-1 , a déjà fusionné les correctifs de souris de wine-staging.

En utilisant ces correctifs, je ne contrôle toujours que la souris, peut-être 1 lancement sur 10.

C'est vraiment étrange, après avoir patché wine il y a quelque temps, je contrôle la souris 100% du temps. Quelqu'un d'autre rencontre-t-il le même problème où les correctifs ne fonctionnent

@jaynus : avez-vous essayé d'utiliser un nouveau préfixe (exécutez protontricks 261550 annihilate )? Cela ne devrait pas faire de différence, mais peut-être que vous avez des remplacements étranges d'avant, ou ??

Juste un heads-up, le dernier Proton-GE, 5.5-1 , a déjà fusionné les correctifs de souris de wine-staging.

En utilisant ces correctifs, je ne contrôle toujours que la souris, peut-être 1 lancement sur 10.

C'est vraiment étrange, après avoir patché wine il y a quelque temps, je contrôle la souris 100% du temps. Quelqu'un d'autre rencontre-t-il le même problème lorsque les correctifs ne fonctionnent pas?

@jaynus : avez-vous essayé d'utiliser un nouveau préfixe (exécutez protontricks 261550 annihilate )? Cela ne devrait pas faire de différence, mais peut-être que vous avez des remplacements étranges d'avant, ou ??

Oui! J'ai supprimé tout le préfixe et reparti à zéro, c'est encore très sporadique

J'ai eu la chance de tester un peu un nouveau préfixe maintenant. Eu exactement 2 accidents. Un lorsque j'ai changé les paramètres tout de suite (comme avant, il s'est écrasé mais a enregistré les modifications de paramètres). L'autre était lorsque j'ai essayé de passer de mon écran d'inventaire à mon écran de groupe. Lorsque j'ai essayé de le reproduire, les écrans ont bien changé, avec juste un léger blocage pour que les choses se chargent, donc je suppose que c'était une erreur de chargement unique.

J'ai également accordé plus d'attention à ce que fait réellement l'installation de vcrun2019 , le programme d'installation qui apparaît dit qu'il s'agit du redistribuable 2015-2019, donc il y a de fortes chances que cela ne fasse rien de mieux que d'installer vcrun2015 et vcrun2017 indépendamment, c'est juste une étape pratique.

L'ajout du .net Core que j'ai lié plus tôt (soit en utilisant la ligne de commande comme j'ai publié ou protontricks 261550 --gui suivi de "Run Explorer" comme @EmquCC l'a souligné) complète notre liste de dépendances requises énumérées ici , donc théoriquement , la plupart des plantages restants sont causés par des bogues dans le jeu lui-même et seront bientôt corrigés!

Donc, théoriquement, la plupart des plantages restants sont causés par des bogues dans le jeu lui-même et seront bientôt corrigés!

Je ne sais pas, il y a une longue histoire sanglante de composants de fenêtres échouant sur le vin pour diverses raisons, donc je n'exclurais pas entièrement qu'il n'y ait plus de bogues de vin ici.

C'est vraiment dommage que le programme de téléchargement de crash du jeu ne semble pas fonctionner. Il pourrait y avoir des classes de bogues de jeu qui ne nous affectent que sous Wine et que Taleworlds pourrait résoudre, si seulement ils les connaissaient!

C'est vraiment dommage que le programme de téléchargement de crash du jeu ne semble pas fonctionner. Il pourrait y avoir des classes de bogues de jeu qui ne nous affectent que sous Wine et que Taleworlds pourrait résoudre, si seulement ils les connaissaient!

Vous ne pensez pas qu'il existe un moyen pratique de déboguer? :Ouvre la bouche et ferme les yeux:

J'ai remarqué quelque chose de bizarre, à chaque fois que je ferme le jeu, ou qu'il plante, si je dois le relancer, je dois aussi redémarrer Steam, sinon rien ne se passe.

OK, donc ce que j'ai fait jusqu'à présent sur un nouveau préfixe est:

  • vcrun2019
  • le noyau dotnet supplémentaire dépend
  • dotnet48

Lancer debian busters 18.3 mesa J'ai joué pendant environ une heure avant d'avoir des bandits de montagne. Le jeu était par ailleurs assez fluide et vraiment agréable. Complètement débarrassé des temps d'attente de sauvegarde, ce que je pense que je suis d'accord. Juste besoin de prendre l'habitude d'épargner plus souvent au cas où.

Je suis bon avec cette configuration pour le moment!

Je joue depuis 3 heures maintenant, et "seulement" eu 3 plantages, en utilisant la même configuration que ce que @ jake-hedges vient d'écrire. Dotnet core + 1.0.6 semble avoir résolu la plupart des problèmes.
Crashed une fois après avoir remporté un tournoi, et deux fois de suite en vérifiant la même page dans l'encyclopédie.La deuxième fois que j'ai gagné le tournoi, il ne s'est pas écrasé et l'encyclopédie n'a pas planté le jeu lorsque j'ai essayé d'y accéder à un endroit et à une heure différents du jeu.

Je suis assez content de la configuration moi-même. Je n'ai pas encore eu de baisses de FPS de longue durée non plus

Je fonctionne également bien, même si j'ai encore quelques petits blocages de temps en temps. Je suis sûr que c'est uniquement parce que je fais des choses stupides comme activer la compression transparente sur mes disques et jouer sur un disque dur au lieu d'un ssd.

Je serai ici ou sur les forums si quelque chose commence à casser ... Jusque-là, bonne récolte!

L'exécution de protontricks 261550 dotnet472, qui a installé .NET 4.0, 4.5, 4.6, 4.6.1, 4.6.2 et 4.7.2, a réduit les temps de sauvegarde à quelques secondes, cela ne semble pas non plus améliorer la stabilité de toute façon.

@ptkato Essayez d'installer dotnet Core (voir https://github.com/ValveSoftware/Proton/issues/3706#issuecomment-609959973 et https://github.com/ValveSoftware/Proton/issues/3706#issuecomment-610022040 pour savoir comment faites ceci).

Vérifiez également que votre préfixe n'a pas été défini sur WinXP ou Win7, car les deux ont des problèmes connus. Je recommande Windows 10 pour le préfixe.

Après avoir suivi la solution de contournement actuelle (Proton 5.5-GE https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.5-GE-1 + protontricks 261550 dotnet472 , préfixe défini sur Windows 10) le Le jeu se déroule sans problème, même dans les grandes tailles de bataille (400+).

Cependant, chaque fois que j'entre dans un siège, le jeu bégaie et se fige comme un fou. Quelqu'un d'autre a ça? (Vous pouvez tester rapidement les sièges de Custom Battle et changer le type de bataille). L'installation de dotnet core n'a pas aidé.

@dufuspaelli J'ai eu le même problème avec le bégaiement. Pour moi, c'était lié à l'étranglement thermique du GPU, en abaissant le capuchon du cadre, j'ai obtenu une bien meilleure fluidité. (Cela pourrait être ou non la même chose pour vous).

Une aide pour planter au démarrage avec rien d'autre que l'erreur suivante à montrer? Au moins, c'est ce qui est enregistré juste avant un stacktrace massif.

  218 38705.528:0030:0031:fixme:reg:GetEnabledXStateFeatures
  219 38705.531:0030:0031:trace:loaddll:load_native_dll Loaded L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\clrjit.dll" at 0x1a7e0000: native
  220 38705.532:0030:0031:fixme:ntdll:EtwEventRegister ({319dc449-ada5-50f7-428e-957db6791668}, 0x1a8c2bc0, 0x1a8eb8a0, 0x1a8eb8c0) stub.
  221 38705.532:0030:0031:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0x1a8d7e91, 28) stub
  222 38705.535:0030:0031:fixme:path:parse_url failed to parse L"TaleWorlds.Library"
  223 38705.537:0030:0031:fixme:path:parse_url failed to parse L"netstandard"
  224 38705.540:0030:0031:trace:loaddll:load_so_dll Loaded L"C:\\windows\\system32\\bcrypt.dll" at 0x7f0bfdf90000: builtin
  225 38705.542:0030:0031:trace:loaddll:load_so_dll Loaded L"C:\\windows\\system32\\crypt32.dll" at 0x7f0bfde90000: builtin
  226 38705.542:0030:0031:trace:loaddll:load_native_dll Loaded L"C:\\windows\\system32\\rsaenh.dll" at 0x66500000: PE builtin
  227 38705.556:0030:0031:fixme:path:parse_url failed to parse L"System.Core"
  228 38705.566:0030:0031:fixme:path:parse_url failed to parse L"TaleWorlds.TwoDimension.Standalone"
  229 38705.567:0030:0031:fixme:path:parse_url failed to parse L"ManagedStarter"

Lancer proton-5.5-GE-1 avec protontricks 261550 dotnet472 et win10.

Après avoir suivi la solution de contournement actuelle (Proton 5.5-GE https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.5-GE-1 + protontricks 261550 dotnet472 , préfixe défini sur Windows 10) le Le jeu se déroule sans problème, même dans les grandes tailles de bataille (400+).

Cependant, chaque fois que j'entre dans un siège, le jeu bégaie et se fige comme un fou. Quelqu'un d'autre a ça? (Vous pouvez tester rapidement les sièges de Custom Battle et changer le type de bataille). L'installation de dotnet core n'a pas aidé.

D'accord, après avoir essayé différents paramètres graphiques, je l'ai compris.

Cela peut être utile pour les personnes exécutant des paramètres + élevés et rencontrant un décalage / bégaiement lors de grandes batailles: réduisez votre paramètre Texture Streaming Budget dans les paramètres du jeu.

Sur mon RTX 2060, un grand siège de château (plus de 400 unités) consomme environ 4,7 Go de VRAM lorsque le budget de streaming de texture est réglé sur faible. Donc, fondamentalement, opter pour un budget de streaming plus élevé mange toute ma VRAM et entraîne donc d'énormes bégaiements. Je ne sais pas s'il s'agit d'un bogue ou d'un comportement attendu de ce paramètre.

@Evilbits Mon instinct dit que quelque chose a peut-être été corrompu, cela vous dérangerait-il de partager le journal complet?

De plus, vous n'êtes peut-être pas sur la dernière version du jeu. J'y ai vu ManagedStarter qui, je crois, a été supprimé dans l'une des mises à jour les plus récentes.

@dufuspaelli Je crois que c'est le comportement prévu. Fondamentalement, le budget de streaming de texture indique au jeu la quantité de vram à économiser pour mettre toutes les textures sur toutes les choses, donc si vous le définissez trop haut, vous manquez de vram pour des choses comme montrer des animations et ainsi bégayer pendant que ces choses essaient de rendre.

Donc, par miracle, le journaliste de crash a commencé à travailler pour moi (avec dotnet472 et ce téléchargement .NET Core):

Screenshot at 2020-04-07 09-13-55

Je ne sais pas s'il a effectivement envoyé le rapport avec succès, ou si TaleWorlds serait en mesure de faire quelque chose d'utile avec lui même si c'était le cas (à moins de nous soutenir activement, les Butterlords utilisant Proton, ce qui serait une surprise, mais une bienvenue), mais bon, ça ne fait pas de mal de l'essayer, non?

Quoi qu'il en soit, au moins une source d'instabilité continue pour moi (et ce qui a conduit à cette découverte fortuite) semble être un System.AccessViolationException qui détruit System.Text.RegularExpressions.RegexRunner.Scan lorsque vous essayez d'afficher / d'actualiser la plaque signalétique d'un parti (je je suppose, basé sur le nom SandBox.ViewModelCollection.Nameplate.PartyNameplateVM.RefreshDynamicProperties la méthode

Je ne sais pas encore quelles pourraient être les prochaines étapes pour résoudre ce problème (à part jeter +heap dans mon WINEDEBUG , ce qui semble être pénible en termes de performances).

En tous cas,
voici steam-261550.log , rgl_log_42.txt et rgl_log_errors_42.txt , pour la postérité.

@Yarwin

J'ai remarqué que vous avez modifié le premier commentaire initial pour recommander d'installer une version aléatoire de Proton pour `` contourner '' ce problème, mais je ne pense pas que ce soit une bonne idée de recommander des versions aléatoires de Proton à partir de personnes aléatoires sur Internet, sans entrer dans un grand débat sur les (dé) mérites d'exécuter des binaires à partir de personnes aléatoires (par exemple, wine a accès au système de fichiers à tout votre répertoire personnel, par exemple). Il est également probablement inutile pour Valve si la `` solution de contournement '' consiste à exécuter une chose Proton fourchue avec un grand nombre de modifications.

La solution de contournement actuelle pour les problèmes d'entrée consiste à créer Proton à partir de ce dépôt en appliquant le correctif de mise en scène wine en amont.

@YellowApple , essayant de recréer votre crash, mais je n'ai rien pour l'instant ... Quand vous dites plaque signalétique, faites-vous référence à la plaque de carte du monde avec le nom de l'armée et les informations sur la troupe?

Le voir passer par tous les trucs de localisation avant de frapper Sandbox.ViewModelCollection.Nameplate.PartyNameplateVM.RefreshDynamicProperties m'a rappelé ce fil . C'est long, mais vous pouvez essayer de supprimer les données de localisation chinoises comme décrit ici.


@craftyguy , pour ce que ça vaut, GloriousEggroll contribue à la fois à la mise en scène du vin et au lutris. Personnellement, je ne considère pas cela comme une «personne Internet aléatoire», mais je vois votre point de vue. Peut-être qu'une clause de non-responsabilité est plus appropriée avec des informations supplémentaires pour ceux qui se sentiraient mieux à construire leur propre.

Enfin, @Yarwin , puisque l'OP a été mentionné, vous pourriez envisager d'ajouter le nouveau truc .net Core car il semble réduire les plantages et nous avons maintenant un rapport du journaliste de crash fonctionnant après son installation!

@Yarwin

J'ai remarqué que vous avez modifié le premier commentaire initial pour recommander d'installer une version aléatoire de Proton pour `` contourner '' ce problème, mais je ne pense pas que ce soit une bonne idée de recommander des versions aléatoires de Proton à partir de personnes aléatoires sur Internet, sans entrer dans un grand débat sur les (dé) mérites d'exécuter des binaires à partir de personnes aléatoires (par exemple, wine a accès au système de fichiers à tout votre répertoire personnel, par exemple). Il est également probablement inutile pour Valve si la `` solution de contournement '' consiste à exécuter une chose Proton fourchue avec un grand nombre de modifications.

La solution de contournement actuelle pour les problèmes d'entrée consiste à créer Proton à partir de ce dépôt en appliquant le correctif de mise en scène wine en amont.

GloriousEggroll n'est pas plus «aléatoire» que Proton lui-même n'est aléatoire, ou Mozilla Firefox, ou tout autre logiciel open source sur Internet qui est fourni gratuitement sans garantie ni indemnisation.

Passer 15 minutes à lire les différences de commit du référentiel de GloriousEggroll montre très clairement qu'il fait un excellent travail pour fournir les derniers correctifs et fonctionnalités d'une version Proton incorporant le dernier code de développement de Wine et de nombreux correctifs spécifiques au jeu qui ne l'ont pas encore fait. Du vin. Il n'est pas un chapeau noir "aléatoire" fournissant des binaires uniquement dans le but d'explorer vos données ou d'exécuter un rootkit sur votre système. Il met une tonne de travail pour maintenir une très bonne fourchette de Proton.

Honnêtement, la plupart des joueurs Linux n'ont pas la capacité technique ou la patience de créer tous leurs logiciels à partir de la source. Et même si vous le faites, à moins que vous n'auditiez également ce code, ce n'est pas _ vraiment_ mieux que de télécharger des binaires. Si vous êtes vraiment paranoïaque, vous devriez jouer sur un système isolé qui n'a aucune donnée personnelle et aucun accès à des ressources réseau privilégiées, ou à une VM configurée de manière similaire. Les jeux à source fermée eux-mêmes sont connus pour télécharger une quantité effrayante de données sur leurs utilisateurs vers le développeur du jeu, et les exécuter sous wine ne changera probablement pas cela.

Dans l'ensemble, je pense que vous réagissez excessivement à l'idée de considérer GE comme non fiable ou «aléatoire». Si vous êtes sérieusement paranoïaque, vous ne devriez utiliser que des logiciels vraiment gratuits et open source (qui par définition excluent M&B II: Bannerlord!) Dont vous avez manuellement audité chaque ligne de code source. Oh, et n'utilisez pas non plus de BIOS propriétaire - cela signifie que vous devez acheter un processeur et une carte mère dotés d'un microcode ouvert.

Quant à Valve, ils ne semblent pas très impliqués dans le travail avec la communauté des utilisateurs de Proton pour aider à améliorer Proton. Je ne peux que supposer que leur position est soit (a) que nous ne nous soucions pas de Proton en général, ou (b) nous nous soucions uniquement des problèmes qui _nous_ nous soucions_, pas de ce dont nos utilisateurs se plaignent. Je n'ai vu aucun employé de Valve participer à ce rapport de bogue, n'est-ce pas?

Valve se contente probablement de permettre à la communauté autour de ce jeu très populaire de trouver des solutions pour Bannerlord et de les faire remonter dans _Wine_. Honnêtement, c'est moins de travail pour eux, donc c'est logique. À moins qu'il n'y ait quelque chose de spécifique à ce que fait _Proton_ qui ne puisse pas être corrigé en amont dans _Wine_, ils vont presque certainement ignorer ce rapport de problème et attendre que Wine corrige le problème.

La version Proton-GE est le moyen le plus rapide de jouer à Bannerlord aujourd'hui pour les joueurs Linux pas très techniques. Pour ceux qui ne font pas confiance à la version mais n'ont pas les compétences nécessaires pour compiler à partir des sources, ils sont invités à attendre que Valve mette à jour la version stable de SteamPlay à partir du client Steam officiel avec une version de Wine contenant les correctifs de Bannerlord. D'après l'expérience passée, cela pourrait prendre plusieurs semaines à plusieurs mois.

GloriousEggroll n'est pas plus «aléatoire» que Proton lui-même n'est aléatoire, ou Mozilla Firefox, ou tout autre logiciel open source sur Internet qui est fourni gratuitement sans garantie ni indemnisation.

Mozilla et Valve sont beaucoup plus dignes de confiance que certains individus fournissant des binaires sur Internet. Les premières sont des entreprises responsables, les dernières non.

Et encore une fois, cela aide presque certainement Valve moins si les données dont ils disposent pour ce jeu utilisent une fourche Proton qui n'est même pas proche de ce qu'ils publient. Parce que ne nous leurrons pas, le but de ce problème dans ce repo est de faire avancer l'objectif de faire fonctionner ce jeu avec la sortie de Valve de Proton, pas avec Eggroll ou la fourchette de Proton de quelqu'un d'autre. Et ce n'est pas un forum de support de jeu général (il y en a un sur le site Web de Taleworld).

Pour moi (Fedora 32 KDE Beta), les .ex doivent encore être renommés. Impossible d'entrer dans le jeu avec la solution de contournement actuelle (5.5-GE-1 + protontricks 261550 dotnet472).
Renommer donc Mount & Blade II Bannerlord / bin / Win64_Shipping_Client /
Bannerlord.exe
à
TaleWorlds.MountAndBlade.Launcher.exe

@craftyguy Il est littéralement un contributeur à la mise en scène du vin. Vous discutez d'une position d'ignorance. Et ce n'est pas non plus votre blog.

GloriousEggroll n'est pas plus «aléatoire» que Proton lui-même n'est aléatoire, ou Mozilla Firefox, ou tout autre logiciel open source sur Internet qui est fourni gratuitement sans garantie ni indemnisation.

Mozilla et Valve sont beaucoup plus dignes de confiance que certains individus fournissant des binaires sur Internet. Les premières sont des entreprises responsables, les dernières non.

Et encore une fois, cela aide presque certainement Valve _less_ si les données dont ils disposent pour ce jeu utilisent une fourche Proton qui n'est même pas proche de ce qu'ils publient. Parce que ne nous leurrons pas, le but de ce problème dans ce repo est de faire avancer l'objectif de faire fonctionner ce jeu avec la sortie de Valve de Proton, pas avec Eggroll ou la fourchette de Proton de quelqu'un d'autre. Et ce n'est pas un forum de support de jeu général (il y en a un sur le site Web de Taleworld).

Il existe des fourchettes de Proton spécifiquement parce que l'acceptation des contributions dans ces projets en amont (Proton et Wine) est historiquement difficile et un processus très lent et laborieux.

  • Valve ne répond pas à la communauté. Lorsque de nouveaux titres majeurs sortent, ils ne font aucun effort pour s'engager avec la communauté, pour annoncer "nous y travaillons" ou "aidez-nous et nous incorporerons vos correctifs dans Proton" ou quoi que ce soit de ce genre. Proton est essentiellement géré comme un dépôt GitHub open source commercial "tour d'ivoire". Les demandes de tirage restent pendant des mois ou des années avec peu ou pas de commentaires.
  • Valve (et souvent Wine en amont) refusent parfois des contributions pratiques et utiles et insistent à la place sur une solution «parfaite» qui est beaucoup plus difficile à développer. Lorsque vous essayez de faire fonctionner un jeu ou un logiciel, il est souvent facile de faire une «solution rapide» qui résout le problème immédiat. Vous pouvez même étendre ce correctif à un nom de processus spécifique pour l'empêcher d'affecter d'autres logiciels. Mais les amont avec lesquels nous avons affaire - Valve / Proton et Wine - sont souvent réticents à accepter ces contributions, insistant plutôt pour que le code sous-jacent soit complètement repensé ou retravaillé à la perfection avant qu'une contribution puisse être acceptée. Ces refactorisations majeures sont souvent hors des compétences des personnes qui peuvent apporter des solutions rapides; même s'ils sont dans leurs capacités, cela peut prendre des mois ou des années pour achever ces changements majeurs. En attendant, nous n'aurions aucune compatibilité avec le logiciel / jeu défectueux sans une solution rapide. C'est pourquoi les versions correctes de Proton (et de Wine avant lui) sont si populaires et utiles.
  • Les entreprises qui travaillent sur ce logiciel sont parfois assez hypocrites sur les solutions de contournement. L'une des principales entreprises impliquées dans Wine / Proton est Codeweavers. Ils distribuent une distribution commerciale payante de Wine appelée CrossOver Linux (et CrossOver Mac également). Bien que ceux-ci soient fortement basés sur Wine en amont, il n'est pas rare pour eux de mettre en œuvre des hacks, des solutions de contournement et d'autres mesures "pratiques" pour corriger un titre majeur ou un logiciel majeur (le plus souvent Microsoft Office) dans leur produit commercial, sans fusionner la même solution de contournement pour le code open source en amont. Donc, les solutions de contournement sont bonnes si elles améliorent l'apparence de leur produit, mais pas si d'autres contribuent aux solutions de contournement.
  • La remontée est déjà en cours! Il y a un article antérieur dans ce fil avec la preuve directe que le correctif du curseur de la souris pour Bannerlord a été accepté par wine-staging, qui est en amont de Proton. La seule chose qui empêche ce patch d'être entraîné dans une version stable de Proton, c'est le temps. Beaucoup de temps - des semaines ou des mois, probablement. Il n'y a donc plus de vrai travail à faire pour mettre ce truc en amont maintenant. Mes points précédents sur la difficulté d'obtenir des choses en amont concernent principalement d'autres jeux et d'autres types de solutions de contournement qui ne sont pas aussi clairs que celui-ci. La fourchette de GE de Proton contient de nombreuses corrections pratiques pour les jeux qui risquent de ne pas arriver en amont pendant des mois, voire jamais.

@YellowApple J'obtiens cette exception si j'utilise le backend du compilateur ACO shader pour mesa,
depuis que je suis revenu à llvm, les plantages ont été moins fréquents et au lieu de cette exception, le jeu se fige juste (j'ai été trop paresseux jusqu'à présent pour enregistrer ce qui se passe là-bas mais je le ferai dans les prochains jours).

Logiciel utilisé:
dernier proton-ge
dotnet472
mesa git (llvm 9)
linux-zen 5.6.2

Matériel utilisé:
Vega 56
3700X

Mettre à jour:
Je me suis trompé de passer à llvm me semblait mieux.

Je suis le travail actuel autour de: Proton 5.5-GE + protontricks 261550 dotnet472, en m'assurant que j'ai défini Win 10 comme système d'exploitation.

Je rencontre un crash toutes les quelques minutes, avec à peu près les mêmes modules chargés. Je ne suis pas en mesure de bien comprendre le journal, en espérant que quelqu'un le fera.
backtrace.txt

1060Ti 6 Go (pilote nvidia 440) avec processeur Ryzen 1800x

Excellent travail à tous pour résoudre ce problème et le rendre quelque peu jouable pour le grand public!

@Demannu Essayez d'installer dotnet Core si vous ne l'avez pas fait. J'ai créé un nouveau préfixe hier, et je suis passé d'une panne toutes les quelques minutes à toutes les 1-2 heures. Il s'est écrasé deux fois de suite lorsque j'ai commencé le jeu ce matin, mais cela a fonctionné au troisième essai.

Comment installer: Protontricks Terminal / Protontricks GUI

Assurez-vous également que votre préfixe est défini sur Windows 10 et non sur WinXP, qui est apparemment remplacé par l'un des scripts dotnet.

La seule chose que j'ai faite à mon nouveau préfixe est;

  • Utilisez Proton 5.5-GE-1
  • Installez dotnet48
  • Installez vcrun2019
  • Installez dotnet Core manuellement
  • Assurez-vous que le préfixe est défini sur Windows 10

J'ai utilisé protontricks --gui pour tout installer et définir le préfixe sur Win10.

Modifier: si vous utilisez des mods, assurez-vous de vérifier les mises à jour tous les jours également, et essayez de les désactiver si vous plantez. Après la sortie de la 1.0.6, mon jeu a commencé à planter dans l'arène, mais il s'est avéré que c'était les mods d'arène que j'utilisais

Donc en guise de mise à jour:

Avec un nouveau préfixe, configurez dans cet ordre:

  • Démarrez Bannerlord une fois avec Proton-5.5-GE-1 défini comme couche de compatibilité dans Steam
  • protontricks 261550 vcrun2019
  • Installez le noyau dotnet via la méthode GUI et téléchargez dans ce fil
  • protontricks 261550 dotnet48

Je semble toujours avoir les problèmes suivants:

  • La souris semble toujours ne pas fonctionner peut-être 70% du temps. Je dois redémarrer à plusieurs reprises jusqu'à ce que cela fonctionne. Ce n'est pas le cas sur mon ordinateur portable, uniquement sur mon bureau.
  • dotnet472 et dotnet48 ne semblent pas résoudre le problème de blocage de la sauvegarde. Il semble toujours que je prenne plus de 90 secondes pour enregistrer. Comment a-t-il été déterminé s'il s'agissait de .NET? Que dois-je creuser pour voir pourquoi cela ne fonctionne toujours pas?

Sur un autre sujet, est-ce que quelqu'un a commencé à fouiller sur le côté multijoueur du jeu? Je sais que Battleye va être difficile, mais il y a des rapports de jeux Battleye fonctionnant sous Linux.

L'erreur actuelle est quelque chose comme:
Erreur 31: erreur de pilote

Sur un autre sujet, est-ce que quelqu'un a commencé à fouiller sur le côté multijoueur du jeu? Je sais que Battleye va être difficile, mais il y a des rapports de jeux Battleye fonctionnant sous Linux.

L'erreur actuelle est quelque chose comme:
Erreur 31: erreur de pilote

BattleEye installe ces jours-ci un pilote de noyau et un service pour l'anticheat. Les deux ne sont tout simplement pas possibles avec du vin, vraiment.

Sur un autre sujet, est-ce que quelqu'un a commencé à fouiller sur le côté multijoueur du jeu? Je sais que Battleye va être difficile, mais il y a des rapports de jeux Battleye fonctionnant sous Linux.

L'erreur actuelle est quelque chose comme:
Erreur 31: erreur de pilote

Le multijoueur a toujours fonctionné parfaitement pour moi, le matchmaking et les serveurs personnalisés. Je viens d'annuler l'installation de BattleEye lorsque vous y êtes invité.

Sur un autre sujet, est-ce que quelqu'un a commencé à fouiller sur le côté multijoueur du jeu? Je sais que Battleye va être difficile, mais il y a des rapports de jeux Battleye fonctionnant sous Linux.
L'erreur actuelle est quelque chose comme:
Erreur 31: erreur de pilote

Le multijoueur a toujours fonctionné parfaitement pour moi, le matchmaking et les serveurs personnalisés. Je viens d'annuler l'installation de BattleEye lorsque vous y êtes invité.

Wow vous avez raison, je n'avais même pas essayé le multijoueur à cause du BattleEye susmentionné, mais oui, cela fonctionnait bien pour moi aussi après avoir annulé l'installation au début. Ils doivent l'avoir désactivé pour le moment, et je suis sûr que cela cessera de fonctionner à un moment donné dans le futur, mais pour l'instant, tout semble fonctionner.

En ce qui concerne le mode solo, ma configuration actuelle implique l'utilisation de dotnet48, vcrun2019 et l'installation de l'exe dotnet core, ainsi que la définition du préfixe sur Windows 10. Je reçois toujours des plantages toutes les heures environ, et parfois plus fréquemment, en particulier juste après le chargement d'un enregistrer. J'ai également eu la même erreur que @YellowApple impliquant une exception System.AccessViolationException avec la plaque signalétique de la partie.

Enfin, @Yarwin , puisque l'OP a été mentionné, vous pourriez envisager d'ajouter le nouveau truc .net Core car il semble réduire les plantages et nous avons maintenant un rapport du journaliste de crash fonctionnant après son installation!

Merci pour votre contribution - J'ajouterai .net core au mini-guide de contournement.
Liste des exigences si quelqu'un est curieux: https://forums.taleworlds.com/index.php?threads/installing -missing-necessary-dependencies.407126 / (les vcruns sont installés par défaut par Steam et il semble qu'ils fonctionnent bien )

Sur un autre sujet, est-ce que quelqu'un a commencé à fouiller sur le côté multijoueur du jeu? Je sais que Battleye va être difficile, mais il y a des rapports de jeux Battleye fonctionnant sous Linux.
L'erreur actuelle est quelque chose comme:
Erreur 31: erreur de pilote

Le multijoueur a toujours fonctionné parfaitement pour moi, le matchmaking et les serveurs personnalisés. Je viens d'annuler l'installation de BattleEye lorsque vous y êtes invité.

Je n'avais aucune idée que cela fonctionnait. C'est hilarant.

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.

La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.

Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.

Aucune suggestion?

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.

La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.

Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.

Aucune suggestion?

Cela va certainement être quelque chose sur votre système alors. J'utilise exactement la même configuration sans aucun problème. La seule fois où j'utilise CentOS, c'est au travail. Je suis sûr que cela peut être fait, mais je ne peux pas imaginer jouer dessus.

Arch Linux ou Manjaro semblent être la voie à suivre pour les jeux Proton.

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.
La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.
Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.
Aucune suggestion?

Cela va certainement être quelque chose sur votre système alors. J'utilise exactement la même configuration sans aucun problème. La seule fois où j'utilise CentOS, c'est au travail. Je suis sûr que cela peut être fait, mais je ne peux pas imaginer jouer dessus.

Arch Linux ou Manjaro semblent être la voie à suivre pour les jeux Proton.

J'ai pensé que ce serait le cas. Je suppose qu'il est temps d'apprendre pacman ...

Donc, juste pour confirmer le comportement.

Si le jeu plante, je dois tuer manuellement son processus dans le gestionnaire de tâches. Cependant, si j'essaye de le relancer sur Steam, rien ne se passe. Il ne se relancera que si je redémarre complètement Steam.

Donc, juste pour confirmer le comportement.

Si le jeu plante, je dois tuer manuellement son processus dans le gestionnaire de tâches. Cependant, si j'essaye de le relancer sur Steam, rien ne se passe. Il ne se relancera que si je redémarre complètement Steam.

Cela m'arrivait également tout au long de mes tests

Il ne se relancera que si je redémarre complètement Steam.

Cela semble un peu étrange. Après avoir tué le processus, le serveur de vins est-il toujours en cours d'exécution ou est-ce que cela s'arrête tout seul?

Donc, juste pour confirmer le comportement.

Si le jeu plante, je dois tuer manuellement son processus dans le gestionnaire de tâches. Cependant, si j'essaye de le relancer sur Steam, rien ne se passe. Il ne se relancera que si je redémarre complètement Steam.

J'ai constaté qu'il y avait souvent un explorer.exe (entre autres) en cours d'exécution (surtout s'il apparaissait avec une boîte de dialogue d'erreur Wine). Tuer cela suffit généralement pour effacer tout le reste (je garde généralement htop cours d'exécution avec un filtre .exe spécifiquement pour les attraper s'ils restent).

Vous devrez également assassiner tous les processus wineserver persistants.

Je viens de tenter d'ajouter le noyau .NET dont nous avons besoin à winetricks . J'espère qu'il sera accepté et que nous pourrons simplifier notre solution de contournement à protontricks dotnet472 et protontricks dotnetcore2

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.
La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.
Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.
Aucune suggestion?

Cela va certainement être quelque chose sur votre système alors. J'utilise exactement la même configuration sans aucun problème. La seule fois où j'utilise CentOS, c'est au travail. Je suis sûr que cela peut être fait, mais je ne peux pas imaginer jouer dessus.
Arch Linux ou Manjaro semblent être la voie à suivre pour les jeux Proton.

J'ai pensé que ce serait le cas. Je suppose qu'il est temps d'apprendre pacman ...

Ou faites simplement défiler vers le haut dans ce fil de discussion géant (je sais; c'est beaucoup de lecture) et voyez où les gens ont mentionné le correctif à plusieurs reprises.

GloriousEggroll n'est pas plus «aléatoire» que Proton lui-même n'est aléatoire, ou Mozilla Firefox, ou tout autre logiciel open source sur Internet qui est fourni gratuitement sans garantie ni indemnisation.

Mozilla et Valve sont beaucoup plus dignes de confiance que certains individus fournissant des binaires sur Internet. Les premières sont des entreprises responsables, les dernières non.
Et encore une fois, cela aide presque certainement Valve _less_ si les données dont ils disposent pour ce jeu utilisent une fourche Proton qui n'est même pas proche de ce qu'ils publient. Parce que ne nous leurrons pas, le but de ce problème dans ce repo est de faire avancer l'objectif de faire fonctionner ce jeu avec la sortie de Valve de Proton, pas avec Eggroll ou la fourchette de Proton de quelqu'un d'autre. Et ce n'est pas un forum de support de jeu général (il y en a un sur le site Web de Taleworld).

Il existe des fourchettes de Proton spécifiquement parce que l'acceptation des contributions dans ces projets en amont (Proton et Wine) est historiquement difficile et un processus très lent et laborieux.

* **Valve isn't responsive to the community.** When major new titles come out, they make no effort to engage with the community, to announce "we're working on it" or "help us out and we'll incorporate your fixes into Proton" or anything of the sort. Proton is very much run as an "ivory tower" commercial open source GitHub repository. Pull requests sit for months or years with little or no feedback.

* **Valve (and often, upstream Wine) sometimes decline practical, useful contributions and instead insist on a "perfect" solution that is much more difficult to develop.** When trying to get a game or a piece of software running, it's often easy to make a "quick fix" that solves the immediate problem. You can even scope this fix to a specific process name to prevent it from affecting other software. But the upstreams we're dealing with -- Valve/Proton and Wine -- are often reluctant to accept these contributions, instead insisting that the underlying code be completely redesigned or reworked to perfection before a contribution can be accepted. These major refactorings are often out of the skillset of the people who can contribute quick fixes; even if they are within their abilities, it can take months or years to complete such major changes. In the meantime, we'd have no compatibility with the broken software/game without a quick fix. **This is why fix builds to Proton (and Wine before it) are so popular and useful.**

* **The companies that work on this software are sometimes pretty hypocritical about workarounds.** One of the major companies involved in Wine/Proton is Codeweavers. They distribute a paid, commercial distribution of Wine called CrossOver Linux (and CrossOver Mac, too). While these are heavily based on upstream Wine, it's not uncommon for them to implement hacks, workarounds and other such "practical" measures to fix a major title or major piece of software (most often Microsoft Office) in their commercial product, while not merging the same workaround to the upstream, open source code. So workarounds are fine if it makes their product look better, but not fine if others are contributing the workarounds.

* **The upstreaming is already happening!** There is an earlier post in this thread with direct evidence that the mouse cursor fix for Bannerlord has been accepted by wine-staging, which is Proton's upstream. The only thing preventing that patch from getting pulled into a stable release of Proton, is time. Lots and lots of time -- weeks or months, probably. So there is no real work left to be done to get this stuff upstreamed now. My earlier points about the difficulty of getting stuff upstream are mostly pertaining to other games and other types of workarounds that aren't as clear-cut as this one was. GE's fork of Proton contains many practical fixes for games that may not hit wine upstream for months, if ever.

Je suis d'accord avec la plupart de cela, mais je pense que les solutions de contournement «hacky» et celles spécifiques au nom du processus devraient être minimisées autant que possible dans les dépôts principaux. Tout va bien tel qu'il est actuellement, avec la communauté fournissant des correctifs pour les dernières versions tandis qu'en amont ne contenant que des commits qui prennent en compte l'image plus large. Je ne pense pas que ni l'un ni l'autre des projets ni leurs responsables ne devraient être blâmés pour ne pas avoir inclus de telles solutions de contournement, car cela entraînera éventuellement des dettes techniques massives. Le correctif du curseur de la souris pour ce jeu est déjà en amont dans wine-staging, donc ce n'est pas comme s'ils ignoraient les correctifs `` non-hacky ''

Proton 5.5 GE ne fonctionne pas avec ma configuration. S'écrase instantanément dessus au combat ou après 2 minutes sur la carte.

Je suis le travail actuel autour de: Proton 5.5-GE + protontricks 261550 dotnet472, en m'assurant que j'ai défini Win 10 comme système d'exploitation.

Je rencontre un crash toutes les quelques minutes, avec à peu près les mêmes modules chargés. Je ne suis pas en mesure de bien comprendre le journal, en espérant que quelqu'un le fera.
backtrace.txt

1060Ti 6 Go (pilote nvidia 440) avec processeur Ryzen 1800x

Excellent travail à tous pour résoudre ce problème et le rendre quelque peu jouable pour le grand public!

J'avais ces plantages aléatoires sur un système qui fonctionnait autrement et j'ai finalement compris, à 99%, que c'était la mauvaise sauvegarde automatique versionnée. Par exemple, la mise à niveau d'une sauvegarde 1.0.6 vers 1.0.7 planterait en 1 à 15 minutes sans que je fasse rien de spécial. La suppression de la sauvegarde automatique (1.0.6) a résolu ce problème. J'ai également essayé cela avec des modifications de version antérieures. Cela a éliminé 90% de mes accidents. J'espère que cela aide quelqu'un ici.

Je suis le travail actuel autour de: Proton 5.5-GE + protontricks 261550 dotnet472, en m'assurant que j'ai défini Win 10 comme système d'exploitation.
Je rencontre un crash toutes les quelques minutes, avec à peu près les mêmes modules chargés. Je ne suis pas en mesure de bien comprendre le journal, en espérant que quelqu'un le fera.
backtrace.txt
1060Ti 6 Go (pilote nvidia 440) avec processeur Ryzen 1800x
Excellent travail à tous pour résoudre ce problème et le rendre quelque peu jouable pour le grand public!

J'avais ces plantages aléatoires sur un système qui fonctionnait autrement et j'ai finalement compris, à 99%, que c'était la mauvaise sauvegarde automatique versionnée. Par exemple, la mise à niveau d'une sauvegarde 1.0.6 vers 1.0.7 planterait en 1 à 15 minutes sans que je fasse rien de spécial. La suppression de la sauvegarde automatique (1.0.6) a résolu ce problème. J'ai également essayé cela avec des modifications de version antérieures. Cela a éliminé 90% de mes accidents. J'espère que cela aide quelqu'un ici.

Je vais faire un test, j'ai gardé mes sauvegardes donc je vais les effacer et réessayer. Je vous remercie!

J'utilise proton-5.5-GE-1, j'ai dotnet472, vcrun2019 et dotnetcore2 installés. Quand je démarre le jeu, il semble bien fonctionner. Cependant, je reçois des plantages aléatoires et après quelques plantages, je ne peux plus redémarrer le jeu. Si cela se produit, l'ouverture de protontricks 261550 génère l'erreur suivante:
/home/krulvis/.cache/protontricks/proton/Proton-5.5-GE-1/bin/wine cmd.exe /c echo '%AppData%' returned empty string, error message ""
Quelqu'un a-t-il eu des expériences similaires ou sait-il ce qui se passe?

J'ai remarqué un schéma, si je ne résolvais que automatiquement les batailles avec le "Envoyer des troupes!" option, le jeu plante beaucoup plus souvent que d'aller uniquement sur le terrain et de se battre manuellement.

@Krulvis J'ai parfois exactement le même problème ... Un redémarrage du système le résout toujours pour moi. Cela étant dit, je ne l'ai pas vécu récemment. Cela a probablement quelque chose à voir avec des processus persistants.

J'utilise proton-5.5-GE-1, j'ai dotnet472, vcrun2019 et dotnetcore2 installés. Quand je démarre le jeu, il semble bien fonctionner. Cependant, je reçois des plantages aléatoires et après quelques plantages, je ne peux plus redémarrer le jeu. Si cela se produit, l'ouverture de protontricks 261550 génère l'erreur suivante:
/home/krulvis/.cache/protontricks/proton/Proton-5.5-GE-1/bin/wine cmd.exe /c echo '%AppData%' returned empty string, error message ""
Quelqu'un a-t-il eu des expériences similaires ou sait-il ce qui se passe?

Ouais j'avais ça. J'ai utilisé la version originale de proton fournie par @YellowApple et cela fonctionne

https://forums.taleworlds.com/index.php?threads/known -issues-will-be-updated-soon.401168 /

Certains de nos joueurs peuvent constater que le jeu ne se lance pas du tout, se bloque après le lanceur et se bloque après l'écran de chargement. Nous enquêtons sur ce problème. Il est crucial que vous utilisiez le programme de téléchargement de crash après tous les crashs. Vous pouvez essayer une solution de contournement possible pour ce problème ici. Veuillez noter que nous travaillons très dur pour résoudre ce problème de non lancement!

https://forums.taleworlds.com/index.php?threads/possible -workaround-for-game-not-launching-issue.407128

Le jeu qui ne démarre pas est également un problème Windows.

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.
La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.
Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.
Aucune suggestion?

Cela va certainement être quelque chose sur votre système alors. J'utilise exactement la même configuration sans aucun problème. La seule fois où j'utilise CentOS, c'est au travail. Je suis sûr que cela peut être fait, mais je ne peux pas imaginer jouer dessus.
Arch Linux ou Manjaro semblent être la voie à suivre pour les jeux Proton.

J'ai pensé que ce serait le cas. Je suppose qu'il est temps d'apprendre pacman ...

Ou faites simplement défiler vers le haut dans ce fil de discussion géant (je sais; c'est beaucoup de lecture) et voyez où les gens ont mentionné le correctif à plusieurs reprises.

Je suis nouveau sur github donc quand j'ai lancé un ctrl-f "vcrun2019" je n'ai rien vu.

Merci d'avoir mis votre nom sur votre profil afin que je sache vous éviter dans un environnement professionnel.

Probablement la seule personne essayant de fonctionner sur CentOS 8 mais ... quoi que je fasse, je n'arrive pas à passer à travers l'écran de chargement initial au démarrage, il ne se fige pas mais l'écran de chargement ne se termine jamais.
La version actuelle est Proton-5.5-GE-1 avec dot472 (également essayé dot48) sous win10.
Je vois des gens suggérer vcrun2019, je ne peux pas l'installer, je ne vois que jusqu'à vcrun2017 comme une option pour moi.
Aucune suggestion?

Cela va certainement être quelque chose sur votre système alors. J'utilise exactement la même configuration sans aucun problème. La seule fois où j'utilise CentOS, c'est au travail. Je suis sûr que cela peut être fait, mais je ne peux pas imaginer jouer dessus.
Arch Linux ou Manjaro semblent être la voie à suivre pour les jeux Proton.

J'ai pensé que ce serait le cas. Je suppose qu'il est temps d'apprendre pacman ...

Ou faites simplement défiler vers le haut dans ce fil de discussion géant (je sais; c'est beaucoup de lecture) et voyez où les gens ont mentionné le correctif à plusieurs reprises.

Je suis nouveau sur github donc quand j'ai lancé un ctrl-f "vcrun2019" je n'ai rien vu.

Merci d'avoir mis votre nom sur votre profil afin que je sache vous éviter dans un environnement professionnel.

Hein? Je n'étais pas sarcastique. C'est vraiment beaucoup de lecture. Si vous évitez que quelqu'un essaie vraiment d'aider, c'est votre prérogative, je suppose.

La raison pour laquelle vous ne l'auriez pas trouvé lorsque vous avez fait un ctrl + f est à cause de cette chose cachée au milieu de cette page: https://i.imgur.com/nxX7Qz4.png

Je n'ai jamais travaillé sur un problème aussi important auparavant, moi-même, donc je ne l'ai pas remarqué jusqu'à ce que j'aie vraiment regardé. TIL! Désolé pour tout malentendu.

@allquixotic Cela étant dit, après une recherche assez approfondie de ce problème, je n'ai rien trouvé qui explique réellement comment installer vcrun2019, et j'ai le même problème ... Voulez-vous une explication? J'ai essayé l'option --force et googler.

J'ai décidé de jeter un œil au journal généré lors de l'utilisation de l'indicateur PROTON_LOG , et étonnamment, il a généré un fichier de 274 Mo avec des millions de lignes, est-ce censé être comme ça? Notez que j'ai supprimé le journal précédent avant de lancer le jeu.

@ptkato J'ai eu un fichier journal de 8 Go une fois parce que j'ai activé PROTON_LOG=1 . C'était avec e1.0.4 et stock proton et une session _longer_ (environ 30 minutes). Apparemment, ces fichiers journaux deviennent rapidement gros.

@allquixotic Cela étant dit, après une recherche assez approfondie de ce problème, je n'ai rien trouvé qui explique réellement comment installer vcrun2019, et j'ai le même problème ... Voulez-vous une explication? J'ai essayé l'option --force et googler.

D'après ce que j'ai trouvé, vcrun2019 ne semble rien faire de différent, sauf installer à la fois vcrun2015 et vcrun2017. Bien que personnellement, j'ai essayé d'installer les deux et l'installation a échoué en disant qu'elle était déjà installée ...

@ptkato J'en ai eu un complètement remplir mon disque dur hier ... Quelques 340 Go

@allquixotic Cela étant dit, après une recherche assez approfondie de ce problème, je n'ai rien trouvé qui explique réellement comment installer vcrun2019, et j'ai le même problème ... Voulez-vous une explication? J'ai essayé l'option --force et googler.

vcrun2019 semble être un ajout récent à winetricks. Dans arch, il se trouve dans le package winetricks-git mais pas dans winetricks.

Voulait donner une mise à jour;
Je suis entrain de courir:

  • Proton-5.5-GE-1
  • protontricks 261550 dotnet472
  • proton --gui solution de contournement pour installer dotnet core
  • Windows 10 dans winecfg
  • Supprimer toutes les sauvegardes automatiques précédentes des patchs précédents du jeu

J'ai pu jouer une session d'une heure et demie avec seulement 1 crash lors du changement des paramètres vidéo (je suis devenu gourmand). Sinon, je n'en ai pas encore rencontré.

Choses testées:

  • Arène
  • Village de pillage
  • Siming bataille et bataille réelle
  • Rejoint une bataille déjà en cours
  • Parlé à de nombreuses personnes
  • Suspendu à presque tout moment auquel je pourrais penser
  • J'ai essayé d'échapper aux conversations et aux batailles
  • Onglet comme un maniaque pendant les batailles et après les batailles
  • Alt + Tab à peu près à n'importe quel endroit du jeu

Un guide mis à jour peut être trouvé ici

Laissez-moi essayer de tout rassembler alors ...

Merci à VictorRogers , YellowApple , Metal079 , allquixotic , lboklin pour leurs excellentes suggestions et corrections et à tous les autres qui ont aidé à faire fonctionner Bannerlord!

Obtenir tout ce dont vous avez besoin

Proton-5.5-GE-1

  • téléchargez la version ici .

    • il y a un bouton "Éléments" à la fin de chaque publication de version

  • extraire le contenu du fichier .tar.gz dans /home/<your-name>/.steam/compatibilitytools.d/

    • si ce dossier n'existe pas, créez-le

    • vous devriez maintenant avoir un sous-dossier dans ce dossier nommé Proton-5.5-GE-1

  • redémarrez Steam s'il est déjà en cours d'exécution
  • faites un clic droit sur Bannerlord et allez dans "Propriétés"

    • dans l'onglet "Général" en bas, cochez l'option "Forcer l'utilisation d'un outil de compatibilité Steam Play spécifique"

    • vous devriez pouvoir sélectionner l'option "Proton-5.5-GE-1"

  • si vous ne voyez pas l'option dans les propriétés, essayez de déplacer le dossier "Proton-5.5-GE-1" vers l'emplacement suivant: ~/.local/share/Steam/compatibilitytools.d (créez les dossiers s'ils n'existent pas) comme recommandé ici

    • redémarrez Steam et vérifiez si l'option existe maintenant

protontricks

  • malheureusement, il ne semble pas y avoir d'autre moyen "facile" d'obtenir des protontricks que d'utiliser la méthode d'installation pipx
  • les instructions d'installation peuvent être trouvées ici
  • selon cet article , les utilisateurs d'Arch peuvent avoir une autre alternative en utilisant pamac install protontricks-git

noyau dotNet

winetricks avec vcrun2019

  • c'est une bonne idée d'installer la dernière version de winetricks, car de nombreux référentiels distribuent d'anciennes versions de winetricks qui ne savent pas comment gérer vcrun2019
  • winetricks est juste un fichier binaire que vous devez télécharger et rendre exécutable:

    • J'ai compilé les instructions à partir de ceci et de cette source

cd "${HOME}/Downloads"
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
  • si vous souhaitez l'installer pour l'utilisateur actuel:
mkdir "${HOME}/bin"
mv winetricks "${HOME}/bin"
  • si vous souhaitez l'installer à l'échelle du système:
sudo mv winetricks /usr/bin/
  • vous devrez vous reconnecter pour voir la commande dans la console

Faire travailler Bannerlord

  • assurez-vous que vous avez installé la version prérequise de proton et protontricks
  • allez dans /home/<your-name>/.steam/steam/steamapps/compatdata/ et renommez le dossier "261550" en quelque chose comme "Backup_261550"

    • la copie n'est pas suffisante, car vous voulez en fait commencer par l'initialisation de y préfixe de vin complètement frais

    • la copie du dossier sauvegardera vos sauvegardes, vos paramètres et tout votre préfixe wine au cas où vous voudriez récupérer ou tester des choses plus tard

  • lancer le jeu une fois

    • c'est pour laisser steam installer certaines dépendances

    • démarrer une nouvelle campagne n'est pas nécessaire

  • quitter le jeu
  • ouvrez une console et exécutez protontricks 261550 dotnet472

    • il fonctionnera à travers plusieurs installations d'anciennes versions de dotnet

    • lorsque le programme d'installation vous le demande, choisissez "Redémarrer maintenant" (ne redémarrera pas réellement votre PC)

  • quand c'est fait, lancez protontricks 261550 vcrun2019

    • _Je ne suis pas sûr à cent pour cent si cela est nécessaire, mais je l'ai fait et ma configuration semble fonctionner correctement_

  • quand c'est fait, lancez protontricks 261550 --gui

    • sélectionnez "Sélectionnez le préfixe de vin par défaut"

    • vérifiez dans le titre de la fenêtre si le préfixe correct est sélectionné, il doit être /home/<your-name>/.steam/steam/steamapps/compatdata/261550/pfx

    • sélectionnez "Exécuter l'explorateur"

    • ouvrez le périphérique "/" et allez à l'endroit où vous avez téléchargé le fichier dotnet-core et double-cliquez dessus pour le laisser s'installer

    • _ comme j'avais deux fichiers "dotnet core", j'ai installé les deux de cette façon_

    • fermez l'explorateur lorsque l'installation est terminée

    • sélectionnez "Exécuter winecfg"

    • dans l'onglet "Applications" en bas, définissez "Version Windows" sur Windows 10

    • _Je ne suis pas sûr à cent pour cent si cela est nécessaire. Je l'ai sous Windows 7 et tout semble fonctionner correctement_

    • fermez winecfg avec le bouton "OK" et quittez l'interface graphique protontricks en appuyant sur "Annuler" jusqu'à ce qu'il se ferme

  • lancez Bannerlord via Steam
  • démarrer une nouvelle campagne

    • vous n'avez pas d'autre choix, car vos anciennes sauvegardes ne sont que dans la sauvegarde

    • vous pouvez essayer de récupérer vos anciennes sauvegardes, mais seulement si vous les avez créées avec la même version de jeu que celle que vous utilisez actuellement

    • Je n'ai pas encore testé cela, alors ... signalez si cela fonctionne.

Dépannage

Si les choses ne fonctionnent toujours pas, il y a quelques choses qui ont été mentionnées dans le très long problème de github que vous pouvez essayer de faire.

Vous utilisez un GPU AMD et le jeu ne fonctionne pas

  • vous pouvez essayer de mettre à jour les derniers pilotes MESA
  • une bonne option pour cela est le ppa oibaf

Vous utilisez NixOS et souhaitez installer winetricks

  • les procédures d'installation pour NixOS sont différentes, donc l'installation de winetricks est un peu plus compliquée. Je ne l'utilise pas, mais un script a été fourni qui peut être utilisé pour installer les derniers winetricks

Le jeu plante et je ne peux pas le redémarrer

  • cela peut être dû à un processus wineerver bloqué. Vérifiez le gestionnaire de tâches de votre système d'exploitation et supprimez-le si nécessaire.

Je veux déboguer le jeu, mais les fichiers journaux sont ÉNORMES

  • proton suppose un ensemble de paramètres de débogage, mais vous pouvez changer cela. Voir cet article pour une explication

@Tercus

extraire le contenu du fichier .tar.gz dans /home/<your-name>/.steam/compatibilitytools.d/

  • vous devriez maintenant avoir un sous-dossier dans ce dossier nommé Proton-5.5-GE-1

Je semble être bloqué sur cette étape, il n'y a pas de dossier de compatibilité pour moi et si j'en crée un et en plus le dossier, je n'ai pas la possibilité de l'utiliser comme version proton

Laissez-moi essayer de tout rassembler alors ...

Bon guide! Quelques suggestions:

  • Faites-en un GitHub Gist afin qu'il puisse être lié plutôt que d'avoir à parcourir ce problème (votre message sera enterré à ce rythme). Liez-y dans un commentaire ici. Le reste d'entre nous peut simplement créer un lien vers votre problème chaque fois que quelqu'un pose une question (dans ce numéro de GitHub ou ailleurs) qui est déjà couverte par votre guide.

  • Étant donné que vos instructions incluent vcrun2019 vous devez également inclure les étapes de dépannage pour savoir comment résoudre la situation où l'utilisateur n'a pas vcrun2019 disponible dans son installation winetricks car il est trop ancien. Moi et quelques autres affiches avons inclus cette étape il y a quelques jours dans ce fil, mais l'essentiel est d'exécuter sudo winetricks --self-update . Vous pouvez également noter que cela ne fonctionne pas pour "NixOS" en raison de la manière unique de NixOS de créer un package de logiciel, mais un autre utilisateur a gentiment contribué à une solution de contournement pour les utilisateurs de NixOS! J'espère que vous pourrez également trouver ce message dans ce fil.

  • Une autre solution de contournement: si l'utilisateur ne voit pas le répertoire ~/.steam/compatibilitytools.d il doit exécuter mkdir -p ~/.local/share/Steam/compatibilitytools.d , puis y copier le dossier Proton-GE. Merci à @ Metal079

  • Un autre utilisateur a signalé que le jeu se bloquait de manière fiable tôt et souvent avec les pilotes graphiques open source AMD sur Ubuntu 18.04, mais lorsqu'il a mis à jour la dernière pile graphique open source git master de oibaf PPA, le jeu a commencé à fonctionner. Donc, je suppose qu'un autre problème connu serait si vous exécutez une ancienne installation Ubuntu en utilisant les pilotes graphiques open source AMD dont vous avez besoin pour les mettre à niveau à l'aide du PPA d'oibaf.

@allquixotic J'ai trouvé le problème! J'avais besoin de créer le dossier Compatibilitytools.d dans /home/USERNAME/.local/share/Steam

Assurez-vous que le nom du dossier est correct (le ".d" à la fin) et redémarrez également Steam après avoir extrait la version proton. Vérifiez si l'archive de protons a accidentellement extrait un niveau plus profond, tel que «Proton-5.5.0-GE-1 / Proton-5.5.0-GE-1 /»

@allquixotic J'ai trouvé le problème! J'avais besoin de créer le dossier Compatibilitytools.d dans /home/USERNAME/.local/share/Steam

Oh sympa. Je ne sais pas ce qui se passe avec ce chemin différent de l'habituel ~ / .steam. J'ai édité mes suggestions pour le guide de Tercus ci-dessus!

Je voulais ajouter quelque chose, j'avais aussi beaucoup de plantages avec la solution décrite ci-dessus (Proton-GE, dotnet472, dotnet core et windows 10), et ce qui l'a résolu pour moi était de passer au pilote ACO mesa plutôt que le par défaut (j'utilise Manjaro avec Mesa 20.0.4 et une Radeon RX 580). Avant de changer, je recevais des plantages toutes les quelques minutes (je pouvais parfois jouer jusqu'à une heure sans tomber en panne), mais après le passage au pilote ACO, le jeu ne s'est pas encore écrasé après environ 2 heures de jeu. J'espère que cela peut aider les personnes qui ont encore des problèmes.

Je voulais ajouter quelque chose, j'avais aussi beaucoup de plantages avec la solution décrite ci-dessus (Proton-GE, dotnet472, dotnet core et windows 10), et ce qui l'a résolu pour moi était de passer au pilote ACO mesa plutôt que le par défaut (j'utilise Manjaro avec Mesa 20.0.4 et une Radeon RX 580). Avant de changer, je recevais des plantages toutes les quelques minutes (je pouvais parfois jouer jusqu'à une heure sans tomber en panne), mais après le passage au pilote ACO, le jeu ne s'est pas encore écrasé après environ 2 heures de jeu. J'espère que cela peut aider les personnes qui ont encore des problèmes.

J'utilise ACO et cela ne semble pas s'améliorer.

Jusqu'à présent, je peux obtenir environ 3 à 4 heures de sauvegarde avant de commencer à planter systématiquement sur tous les correctifs, et c'est si j'ai de la chance. Souvent, je ne peux avoir qu'une heure environ. Actualiser le pfx semble peut-être me faire gagner une heure sur une ancienne sauvegarde avec la même version du jeu. Jusqu'à présent, je n'ai dépassé que les premières heures sans dotnet *, mais les temps de sauvegarde en font une chose difficile à tester.

@allquixotic
~ / .steam devrait être un lien symbolique vers ~ / .local / share / Steam

linux 5.6.2.arch1-2
mesa-aco-git 20.1.0_devel | mesa 20.0.4-1
Processeur AMD Ryzen 5 3600X 6 cœurs
AMD Radeon RX 580

J'utilise proton-5.5-GE-1, j'ai dotnet472, vcrun2019 et dotnetcore2 installés. Quand je démarre le jeu, il semble bien fonctionner. Cependant, je reçois des plantages aléatoires et après quelques plantages, je ne peux plus redémarrer le jeu. Si cela se produit, l'ouverture de protontricks 261550 génère l'erreur suivante:
/home/krulvis/.cache/protontricks/proton/Proton-5.5-GE-1/bin/wine cmd.exe /c echo '%AppData%' returned empty string, error message ""
Quelqu'un a-t-il eu des expériences similaires ou sait-il ce qui se passe?

@Krulvis Il y a très probablement un processus wineserver bloqué qui doit être tué. J'ai rencontré la même chose et tuer qui bloquait wineserver corrigé.

J'ai décidé de jeter un œil au journal généré lors de l'utilisation de l'indicateur PROTON_LOG , et étonnamment, il a généré un fichier de 274 Mo avec des millions de lignes, est-ce censé être comme ça? Notez que j'ai supprimé le journal précédent avant de lancer le jeu.

@ptkato Ouais, c'est normal avec les versions .NET de protontricks 'd. Vous pouvez réduire cela en passant une variable personnalisée WINEDEBUG dans vos options de lancement. Par défaut, Proton suppose WINEDEBUG=+timestamp,+pid,+tid,+seh,+debugstr,+loaddll,+mscoree ; le +seh est ce qui génère ces lignes, c'est donc ce que vous voudriez retirer.

Vous pouvez également définir cela en créant un user_settings.py dans le dossier d'installation de Proton, par exemple ~/.steam/steam/compatibilitytools.d/$PROTON_VERSION/ ou ~/.steam/steam/steamapps/common/$PROTON_VERSION/ (il devrait y avoir un user_settings.sample.py comme modèle) . C'est la façon dont Valve semble recommander de le faire, mais je préfère personnellement définir ces choses sur une base par jeu.

quand c'est fait, lancez protontricks 261550 --gui dlls

@Tercus Vous pouvez aussi simplement lancer protontricks 261550 --gui et utiliser cette option "sélectionner le préfixe par défaut" (qui est automatiquement sélectionnée). Devrait vous amener au même endroit (même si cette option est mal nommée, étant donné que les ensembles de protontricks "par défaut" sont bien ceux de compatdata/261550/pfx au lieu de par exemple ~/.wine ).

Jusqu'à présent, je peux obtenir environ 3 à 4 heures de sauvegarde avant de commencer à planter systématiquement sur tous les correctifs, et c'est si j'ai de la chance. Souvent, je ne peux avoir qu'une heure environ. Actualiser le pfx semble peut-être me faire gagner une heure sur une ancienne sauvegarde avec la même version du jeu. Jusqu'à présent, je n'ai dépassé que les premières heures sans dotnet *, mais les temps de sauvegarde en font une chose difficile à tester.

C'est maintenant aussi mon comportement. Je peux obtenir quelques heures de sauvegarde avant de commencer à planter de manière cohérente. Je vais essayer de regarder de plus près certains journaux et voir ce que je peux trouver. Im mourant ici! :)

Jusqu'à présent, je peux obtenir environ 3 à 4 heures de sauvegarde avant de commencer à planter systématiquement sur tous les correctifs, et c'est si j'ai de la chance. Souvent, je ne peux avoir qu'une heure environ. Actualiser le pfx semble peut-être me faire gagner une heure sur une ancienne sauvegarde avec la même version du jeu. Jusqu'à présent, je n'ai dépassé que les premières heures sans dotnet *, mais les temps de sauvegarde en font une chose difficile à tester.

@allquixotic
~ / .steam devrait être un lien symbolique vers ~ / .local / share / Steam

linux 5.6.2.arch1-2
mesa-aco-git 20.1.0_devel | mesa 20.0.4-1
Processeur AMD Ryzen 5 3600X 6 cœurs
AMD Radeon RX 580

Ouais, le truc ACO était un faux drapeau, et après avoir chargé ma sauvegarde plus tard dans la journée, j'ai eu le même comportement. J'ai regardé les journaux, et il semble que le crash soit dû à la même erreur à chaque fois, ce qui devrait au moins être encourageant:

 Unhandled Exception: System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that othe

TaleWorlds.Localization.TextProcessor.Tokenizer.FindTokenMatches(String text, Int32 beginIndex, Int32 endIndex, List`1 tokenMatches)
   at TaleWorlds.Localization.TextProcessor.Tokenizer.FindTokenMatchesAndText(String text)
   at TaleWorlds.Localization.TextProcessor.Tokenizer.<Tokenize>d__2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at TaleWorlds.Localization.MBTextManager.Process(String query, TextObject parent)
   at TaleWorlds.Localization.MBTextManager.ProcessText(TextObject to)
   at TaleWorlds.Localization.MBTextManager.ProcessText(TextObject to)
   at TaleWorlds.Localization.TextObject.ToString()
   at SandBox.ViewModelCollection.Nameplate.PartyNameplateVM.RefreshDynamicProperties(Boolean forceUpdate)
   at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object )
   at System.Threading.Tasks.Task.Execute()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
   at System.Threading.ThreadPoolWorkQueue.Dispatch()

@ptkato Ouais, c'est normal avec les versions de protontricks 'd .NET. Vous pouvez réduire cela en passant une variable personnalisée WINEDEBUG dans vos options de lancement. Par défaut, Proton suppose WINEDEBUG=+timestamp,+pid,+tid,+seh,+debugstr,+loaddll,+mscoree ; le +seh est ce qui génère ces lignes, c'est donc ce que vous voudriez retirer.

Merci, cela a aidé, le journal suit maintenant:
steam-261550.log

Exception non gérée: System.AccessViolationException: tentative de lecture ou d'écriture de la mémoire protégée. C'est souvent une indication que d'autres
TaleWorlds.Localization.TextProcessor.Tokenizer.FindTokenMatches (String text, Int32 beginIndex, Int32 endIndex, List`1 tokenMatches)
à TaleWorlds.Localization.TextProcessor.Tokenizer.FindTokenMatchesAndText (String text)
à TaleWorlds.Localization.TextProcessor.Tokenizer.d__2.MoveN
...

@tkamat Désolé si c'est du bruit mais de quel journal provient-il, je n'ai rien trouvé de similaire dans 261550/pfx/drive_c/ProgramData/Mount and Blade II Bannerlord/logs/ ou dans WINEDEBUG = + horodatage, + pid, + tid, + seh, + debugstr, + loaddll, + mscoree

@allquixotic @Tercus Je dirais que les astuces Proton peuvent être installées via AUR "pamac install protontricks-git" Je crois que l'IIRC (pas à mon bureau actuellement pour vérifier le nom du paquet)

Le multijoueur a-t-il cessé de fonctionner pour qui que ce soit? J'obtiens des erreurs couldn't receive login results from server maintenant. :(

J'ai mis à jour mon petit guide et inclus les suggestions. L'essentiel peut être trouvé ici . Vous pouvez y commenter des modifications. Merci à tous pour l'excellent travail. Si peu de temps après la sortie et le jeu est jouable sous Linux!

@ptkato J'ai parcouru le journal, la seule chose que j'ai remarquée était

4307.340:002a:0032:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution

Je ne peux pas être sûr que c'est ce qui cause vos plantages, mais c'est facile à réparer; il vous manque un package Linux! Si vous utilisez des distributions basées sur Debian / Ubuntu, ce sera winbind comme le dit le message d'erreur, si vous exécutez quelque chose basé sur Arch, ce sera samba .

Essayez-le et voyez si cela résout quelque chose!

J'ai compris ce qui, du moins pour moi, a rendu mes économies beaucoup plus rapides que d'autres.
Sans dotnet, mes économies étaient d'environ 10 secondes et avec dotnet, cela prenait environ 2 secondes. Certains autres avaient des chiffres similaires.
Où pour la plupart, il semble, les chiffres étaient plus d'environ 2-3 minutes et 30 secondes respectivement.

La raison, pour moi, est fsync. Avec elle activée, j'obtiens les temps de sauvegarde rapides, avec elle, les temps de sauvegarde lents.

Pour moi, dotnet semble être la cause de beaucoup de plantages apparemment aléatoires, j'ai essayé toutes les combinaisons de correctifs ici ainsi que des choses que j'ai inventées moi-même sans amélioration. Les problèmes de performances que certains ont eu avec dotnet ne semblent jamais se produire pour moi, donc les plantages sont le seul problème avec dotnet que j'ai eu.

Donc, ma meilleure expérience, actuellement, est de ne pas faire de réglages / installations de protontricks mais de m'assurer que fsync fonctionne, ce qui était déjà le cas. Je préfère avoir 10 secondes de sauvegarde et pas / beaucoup moins de plantages que 2 secondes de sauvegarde et beaucoup de plantages. Je ne l'ai pas essayé assez longtemps pour dire à quel point je suis sans crash, mais à tout le moins, il s'est considérablement amélioré.

J'ai besoin de dotnet pour que le lanceur fonctionne, donc j'utilise la nouvelle solution de contournement prévue pour contourner le lanceur TaleWorlds introduit dans un correctif récent, pour lancer Bannerlord.Native.exe place. Renommez-le en TaleWorlds.MountAndBlade.Launcher.exe et je suis prêt à partir.

Edit: Un inconvénient de l'exe alternatif est que le lanceur gère le chargement des mods, donc les mods ne sont pas chargés si le lanceur est contourné. Il peut être géré en faisant ce qui est mentionné ici , donc c'est gérable mais pas idéal.

@ albin-engstrom Hmm, le jeu qui fonctionne mieux avec fsync me fait penser qu'esync pourrait être un problème, comme cela a été le cas pour d'autres jeux. Quelqu'un a-t-il essayé de lancer le jeu avec PROTON_NO_ESYNC=1 ?

@tkamat J'ai essayé toutes les combinaisons de fsync et d'esync on ou off. Mais uniquement avec dotnet.
Avec esync et fsync désactivés, le crash était le même que pour toute autre combinaison pour autant que je sache. Comme c'était ce que je testais à l'époque, je n'ai pas noté spécifiquement comment les temps de sauvegarde étaient, mais s'ils étaient nettement plus lents, je suppose que j'aurais remarqué cela.

@tkamat @ albin-engstrom J'ai également testé le jeu avec esync, fsync et sans les deux et sans dotnet, les temps de sauvegarde sont toujours d'environ 15 secondes (avec un processeur Ryzen 3700x et un samsung 860 evo ssd).

METTRE À JOUR:
@ albin-engstrom Lorsque vous utilisez votre suggestion ( Bannerlord.Native.exe lié symboliquement à TaleWorlds.MountAndBlade.Launcher.exe ), mes temps de sauvegarde s'améliorent d'environ 50%, par exemple, je reçois maintenant des temps de sauvegarde d'environ 7,5 secondes (lorsque je n'exécute aucune commande winetricks).

Le multijoueur a-t-il cessé de fonctionner pour qui que ce soit? J'obtiens des erreurs couldn't receive login results from server maintenant. :(

Vérifié à nouveau ce matin et ça marche maintenant! Courtiser!

J'ai également testé le jeu avec esync, fsync et sans les deux et sans dotnet, les temps de sauvegarde sont toujours d'environ 15 secondes (avec un processeur Ryzen 3700x et un samsung 860 evo ssd).

@elovin C'est intéressant. Il se peut qu'il y ait une sorte de problème que fsync résout / contournement dans mon cas, mais dans d'autres cas, le problème peut ne pas être présent et fsync ne change pas autant les choses. Et j'ai un Ryzen 3900X et un 970 Evo, donc des choses assez similaires, donc il est peu probable que ce soit la différence pour nous.

Lorsque vous utilisez votre suggestion (Bannerlord.Native.exe lié symboliquement à TaleWorlds.MountAndBlade.Launcher.exe), mes temps de sauvegarde s'améliorent d'environ 50%, par exemple, je reçois maintenant des temps de sauvegarde d'environ 7,5 secondes (lorsque je n'exécute aucune commande winetricks).

C'est génial, la raison peut être que cela semble charger les choses différemment. Quand j'ai essayé pour la première fois que dotnet était installé et que les temps de sauvegarde étaient courts, le renommage exe semble désactiver / ne pas charger dotnet. J'ai eu les longues savetimes une fois que je l'ai fait.
Il se peut que dotnet ne soit spécifiquement nécessaire que pour le lanceur et qu'il soit chargé avec lui, de sorte que lorsque le lanceur est contourné, dotnet n'est pas chargé.
Il est possible qu'il y ait d'autres choses qui ne sont pas chargées également qui pourraient être la raison de vos résultats.

@ albin-engstrom Eh bien, j'ai finalement fini de compiler un noyau compatible fsync (j'ai utilisé linux-tkg ), et je peux confirmer que les temps de sauvegarde sans dotnet ou tout autre protontricks sont passés de ~ 2 minutes à seulement environ 10 secondes! Je n'ai pas joué assez longtemps pour tirer des conclusions définitives sur la stabilité, mais je n'ai eu aucun crash jusqu'à présent avec cette configuration, alors que toutes les solutions dotnet que j'ai essayées ont fini par tomber en panne.

Pour réitérer, voici les étapes que j'ai suivies:

  1. Installez un noyau compatible fsync (encore une fois, je recommanderais linux-tkg).
  2. Lien symétrique Bannerlord.Native.exe vers TaleWorlds.MountAndBlade.Launcher.exe
  3. Sélectionnez Proton-5.5-GE-1, supprimez le préfixe précédent et lancez le jeu.
  4. C'est ça! Aucun protontricks ou autres trucs requis.

Bien que les temps de sauvegarde soient un peu plus longs avec cette méthode, je pense que la stabilité considérablement accrue compense la différence de quelques secondes, et j'utiliserai cela jusqu'à ce que quelqu'un parvienne à déboguer les plantages dotnet. Ce serait formidable de voir si cela fonctionne pour quelqu'un d'autre, et oui merci à @ albin-engstrom pour avoir compris le truc fsync.

@tkamat Super d'entendre que cela fonctionne bien pour quelqu'un d'autre aussi, j'ai maintenant joué pendant environ 3 heures avec cette configuration sans un seul plantage alors qu'avant j'avais au moins quelques heures, parfois beaucoup plus et parfois beaucoup moins. Mais 3 heures sans crash ont été inouïes.

J'utilise également linux-tkg et je peux le recommander, c'est une grande aide pour compiler votre propre noyau sans le faire entièrement par vous-même. Je le fais pour diverses raisons, fsync en étant une.
Mais si l'on ne veut pas compiler les leurs, il y en a probablement des précompilés disponibles sur la distribution de son choix.

Dans mon cas, j'utilise également proton-tgk ainsi que les scripts de tkg pour compiler dxvk.

@ albin-engstrom Eh bien, j'ai finalement fini de compiler un noyau compatible fsync (j'ai utilisé linux-tkg ), et je peux confirmer que les temps de sauvegarde sans dotnet ou tout autre protontricks sont passés de ~ 2 minutes à seulement environ 10 secondes! Je n'ai pas joué assez longtemps pour tirer des conclusions définitives sur la stabilité, mais je n'ai eu aucun crash jusqu'à présent avec cette configuration, alors que toutes les solutions dotnet que j'ai essayées ont fini par tomber en panne.

Pour réitérer, voici les étapes que j'ai suivies:

  1. Installez un noyau compatible fsync (encore une fois, je recommanderais linux-tkg).
  2. Lien symétrique Bannerlord.Native.exe vers TaleWorlds.MountAndBlade.Launcher.exe
  3. Sélectionnez Proton-5.5-GE-1, supprimez le préfixe précédent et lancez le jeu.
  4. C'est ça! Aucun protontricks ou autres trucs requis.

Bien que les temps de sauvegarde soient un peu plus longs avec cette méthode, je pense que la stabilité considérablement accrue compense la différence de quelques secondes, et j'utiliserai cela jusqu'à ce que quelqu'un parvienne à déboguer les plantages dotnet. Ce serait formidable de voir si cela fonctionne pour quelqu'un d'autre, et oui merci à @ albin-engstrom pour avoir compris le truc fsync.

Avez-vous déjà mené des sièges en jeu? J'ai remarqué que je participais à des sièges, mais en particulier, diriger le siège est une activité très sujette aux accidents.

@vahtos Je

@vahtos J'ai juste essayé de diriger un siège et cela ne s'est pas écrasé. Cela peut avoir à voir avec vos spécifications, essayez peut-être de réduire vos graphiques. J'ai remarqué que définir le budget de texture à faible m'a été très utile.

@tkamat Merci. J'essaierai alors votre configuration. Je ne pense pas que ce soit un problème de budget de texture, car je plante sur la carte de la campagne lors de la configuration du siège ou de la construction des moteurs de siège. Je n'ai jamais vraiment réussi à me battre lors d'un siège que je dirige.

Je viens de tester le jeu dans un nouveau préfixe sans aucun des correctifs de protrontricks, tout en ayant activé fsync, et je n'ai pas eu un seul crash. En plus d'essayer de jouer avec les paramètres du jeu, qui ont encore planté le jeu, le jeu est très stable au point d'être totalement jouable.

@ albin-engstrom Eh bien, j'ai finalement fini de compiler un noyau compatible fsync (j'ai utilisé linux-tkg ), et je peux confirmer que les temps de sauvegarde sans dotnet ou tout autre protontricks sont passés de ~ 2 minutes à seulement environ 10 secondes! Je n'ai pas joué assez longtemps pour tirer des conclusions définitives sur la stabilité, mais je n'ai eu aucun crash jusqu'à présent avec cette configuration, alors que toutes les solutions dotnet que j'ai essayées ont fini par tomber en panne.
Pour réitérer, voici les étapes que j'ai suivies:

  1. Installez un noyau compatible fsync (encore une fois, je recommanderais linux-tkg).
  2. Lien symétrique Bannerlord.Native.exe vers TaleWorlds.MountAndBlade.Launcher.exe
  3. Sélectionnez Proton-5.5-GE-1, supprimez le préfixe précédent et lancez le jeu.
  4. C'est ça! Aucun protontricks ou autres trucs requis.

Bien que les temps de sauvegarde soient un peu plus longs avec cette méthode, je pense que la stabilité considérablement accrue compense la différence de quelques secondes, et j'utiliserai cela jusqu'à ce que quelqu'un parvienne à déboguer les plantages dotnet. Ce serait formidable de voir si cela fonctionne pour quelqu'un d'autre, et oui merci à @ albin-engstrom pour avoir compris le truc fsync.

Avez-vous déjà mené des sièges en jeu? J'ai remarqué que je participais à des sièges, mais en particulier, diriger le siège est une activité très sujette aux accidents.

J'ai essayé de participer à un siège en particulier environ six fois, ce qui s'est figé environ deux secondes dans l'écran de chargement à toutes les occasions sauf une. Je n'ai pas encore essayé d'assiéger d'autres villes.
C'est avec un 5700XT, utilisant les pilotes open source, avec l'original de construction proton posté par @YellowApple , et aucun autre ajustement.

Je suis retourné à Warband mais il semble que de bons progrès aient été accomplis ici, donc je pourrais revenir dans le train de débogage du vin ce week-end.

Fedora 32, noyau 5.6.3
Ryzen 2700 à 4 GHz
AMD Rx580
Proton-5.5-GE-1

J'ai installé DotNet 4.72 en utilisant Winetricks. Le lanceur fonctionne bien si vous faites cela. Cependant, les performances ne sont pas si bonnes. J'ai ensuite essayé de remplacer le lanceur par Bannerlord.Native.exe . Cela a en fait amélioré considérablement les performances. Mais sauvegarder le jeu prend maintenant environ 2 minutes. De plus, il y aura des moments où le jeu atteindra 100% d'utilisation du processeur et semblera se figer. Après quelques minutes, il reviendra à la normale et sera à nouveau jouable.

Les performances sont plutôt bonnes. Il sent un peu bégaiement et gèle de temps en temps.

Edit: Un inconvénient de l'exe alternatif est que le lanceur gère le chargement des mods, donc les mods ne sont pas chargés si le lanceur est contourné. Il peut être géré en faisant ce qui est mentionné ici , donc c'est gérable mais pas idéal.

Cela pourrait valoir la peine d'essayer de les transmettre comme options de lancement; il ressemble à .exe prend une liste dans ses arguments si mon rgl_log est quelque chose à faire:

Command Args: /singleplayer _MODULES_*Native*SandBoxCore*CustomBattle*Sandbox*StoryMode*BannerLogger*CalradiaFutureWarfare*CharacterTrainer*DeveloperConsole*XorberaxYell*zzBannerlordTweaks*zzCharacterCreation*_MODULES_ /anticheat

J'ai installé le noyau XanMod pour Ubuntu 19.10 et je peux confirmer que les temps de sauvegarde ont chuté d'une minute ou deux à quelques secondes avec un nouveau préfixe sans protontricks.

@DeathTBO Essayez un noyau compatible fsync, qui devrait accélérer les économies d'environ 10 secondes ou moins. Cela a été fait pour certains au moins. Je ne sais pas si un précompilé est disponible pour Fedora, mais je suppose qu'il y en a au moins un. Sinon, vous devrez peut-être compiler le vôtre.
Et les gels que vous mentionnez ne sont que les sauvegardes automatiques, donc celles-ci seraient également beaucoup plus rapides.

Cela pourrait valoir la peine d'essayer de les transmettre comme options de lancement; il semble que le .exe en prenne une liste dans ses arguments si mon rgl_log est quelque chose à faire:
Command Args: /singleplayer _MODULES_*Native*SandBoxCore*CustomBattle*Sandbox*StoryMode*BannerLogger*CalradiaFutureWarfare*CharacterTrainer*DeveloperConsole*XorberaxYell*zzBannerlordTweaks*zzCharacterCreation*_MODULES_ /anticheat

@YellowApple Je donnerai une chance plus tard, si cela fonctionne, c'est une meilleure approche car l'autre approche nécessite de copier les fichiers de mod dans les autres modules au lieu de les garder séparés comme prévu.

J'ai essayé le jeu avec seulement proton GE et il fonctionne très bien. Sans surprise, le principal problème est les longues sauvegardes, mais je le tolérerais si le jeu ne sauvegardait pas automatiquement avant chaque combat ... y a-t-il un moyen de désactiver ces sauvegardes aumatiques? Je préfère faire quelques (longues) sauvegardes quand je veux plutôt que d'exécuter un autre noyau.

Installez dotnet472, cela fait sauvegarder le jeu presque instantanément et un de mes amis qui a joué à Warband m'a régulièrement dit que vous voudriez sauvegarder très fréquemment car il plante souvent (même sous Windows). Il corrige également le lanceur, mais ce n'est pas très spécial car la liaison symbolique de Bannerlord.exe à ManagedStarter.exe fait de même.

Installez dotnet472, cela fait sauvegarder le jeu presque instantanément et un de mes amis qui a joué à Warband m'a régulièrement dit que vous voudriez sauvegarder très fréquemment car il plante souvent (même sous Windows). Il corrige également le lanceur, mais ce n'est pas très spécial car la liaison symbolique de Bannerlord.exe à ManagedStarter.exe fait de même.

J'ai essayé avec dotnet mais le jeu s'est écrasé plusieurs fois, donc je préfère lancer le jeu avec proton GE seul s'il est possible de désactiver la sauvegarde automatique.

@ Zouizoui78 Autant que je sache, il n'existe malheureusement aucun moyen connu de désactiver la sauvegarde automatique.

J'ai installé le noyau liquorix (qui, je suppose, est activé par fsync) sur Linux Mint 19.2, j'ai utilisé un nouveau préfixe et j'ai maintenant enregistré environ 10 secondes de sauvegarde. Jusqu'à présent, cela semble stable, il n'y a eu qu'une session de jeu d'une heure environ, mais aucun crash sauf lorsque j'ai initialement modifié mes paramètres (cela semble toujours arriver).

Les performances sont nettement pires qu'avant (bégaiement lors du chargement des textures ou la première fois que je vais au combat, le menu principal avait des baisses massives de fps sur les paramètres graphiques par défaut / max), mais le ramener à moyen semble généralement bien.

Juste un heads-up, le dernier Proton-GE, 5.5-1 , a déjà fusionné les correctifs de souris de wine-staging.

En utilisant ces correctifs, je ne contrôle toujours que la souris, peut-être 1 lancement sur 10.

C'est vraiment étrange, après avoir patché wine il y a quelque temps, je contrôle la souris 100% du temps. Quelqu'un d'autre rencontre-t-il le même problème lorsque les correctifs ne fonctionnent pas?

@jaynus : avez-vous essayé d'utiliser un nouveau préfixe (exécutez protontricks 261550 annihilate )? Cela ne devrait pas faire de différence, mais peut-être que vous avez des remplacements étranges d'avant, ou ??

@craftyguy En utilisant un nouveau préfixe, je reçois des clics de souris à chaque lancement. J'utilise proton-5.5-GE-1, et protontricks dotnet472 et vcrun2019

L'utilisation d'un noyau compatible fsync + un nouveau préfixe a rendu le jeu très stable pour moi maintenant.
Auparavant, j'ai eu des accidents toutes les 10/15 min et même plus fréquemment dans certaines régions.

J'ai installé linux-zen qui a déjà fsync patché.
Sur Arch Linux, le noyau zen prédéfini se trouve dans le référentiel officiel, il est donc très facile à installer.
J'ai créé un nouveau préfixe, exécutant proton-tkg 5.5 et n'ai pas installé de bibliothèques supplémentaires.

Le jeu est très stable et j'ai joué pendant plus d'une heure sans crash. Les temps de sauvegarde sont un peu lents (10 secondes) mais c'est un bon compromis pour la stabilité.

Je recommande à tout le monde d'essayer le noyau linux-zen .


Informations système

Système d'exploitation: Arch Linux
NOYAU: 5.6.3-zen1-1-zen
Processeur: AMD Ryzen 5 2600 Six-Core
GPU: Radeon RX Vega 56
PILOTE GPU: 4.6 Mesa 20.0.4
Mémoire RAM: 8 Go

J'ai installé le noyau liquorix (qui, je suppose, est activé par fsync) sur Linux Mint 19.2, j'ai utilisé un nouveau préfixe et j'ai maintenant enregistré environ 10 secondes de sauvegarde. Jusqu'à présent, cela semble stable, il n'y a eu qu'une session de jeu d'une heure environ, mais aucun crash sauf lorsque j'ai initialement modifié mes paramètres (cela semble toujours arriver).

Les performances sont nettement pires qu'avant (bégaiement lors du chargement des textures ou la première fois que je vais au combat, le menu principal avait des baisses massives de fps sur les paramètres graphiques par défaut / max), mais le ramener à moyen semble généralement bien.

Les baisses de performances lors du chargement de textures / scènes pour la première fois sont normales, celles-ci devraient commencer à disparaître à mesure que vous jouez pendant que le cache de shader fait son travail.

Je recommande à tout le monde d'essayer le noyau linux-zen .

Je lis depuis quelques heures maintenant sur ce nouveau noyau. Je n'arrive pas à trouver une option de restauration. Je regarde en particulier liquorix. Disons qu'il y a un problème avec le noyau, est-il difficile de revenir à la valeur par défaut de Debian?

J'ai installé le noyau liquorix (qui, je suppose, est activé par fsync) sur Linux Mint 19.2, j'ai utilisé un nouveau préfixe et j'ai maintenant enregistré environ 10 secondes de sauvegarde. Jusqu'à présent, cela semble stable, il n'y a eu qu'une session de jeu d'une heure environ, mais aucun crash sauf lorsque j'ai initialement modifié mes paramètres (cela semble toujours arriver).
Les performances sont nettement pires qu'avant (bégaiement lors du chargement des textures ou la première fois que je vais au combat, le menu principal avait des baisses massives de fps sur les paramètres graphiques par défaut / max), mais le ramener à moyen semble généralement bien.

Les baisses de performances lors du chargement de textures / scènes pour la première fois sont normales, celles-ci devraient commencer à disparaître à mesure que vous jouez pendant que le cache de shader fait son travail.

On dirait que, après avoir joué pendant quelques heures, je n'ai vraiment rien remarqué. Dans l'ensemble, une session de 5 heures sans un seul crash.

@ jake-hedges Normalement, quand je veux expérimenter avec différents noyaux, je configure mon bootloader pour avoir une option de menu pour démarrer le noyau expérimental, tout en laissant stable / mainline comme option par défaut. De cette façon, vous ne perdez pas l'option de secours.

Je recommande à tout le monde d'essayer le noyau linux-zen .

Je lis depuis quelques heures maintenant sur ce nouveau noyau. Je n'arrive pas à trouver une option de restauration. Je regarde en particulier liquorix. Disons qu'il y a un problème avec le noyau, est-il difficile de revenir à la valeur par défaut de Debian?

Essayez de demander sur l'IRC de Debian ou sur un autre canal de support pour votre distribution. C'est hors sujet ici.

Et un avertissement pour les autres: ne téléchargez pas de noyaux aléatoires ou ne vous embêtez pas à expérimenter avec des noyaux si vous ne savez pas comment récupérer ou si vous manquez de motivation pour le comprendre. Les gens sont généralement prompts à recommander des choses qui pourraient briser votre système, mais lents à vous aider à réparer les choses lorsqu'ils se cassent.

Essayez de demander sur l'IRC de Debian ou sur un autre canal de support pour votre distribution. C'est hors sujet ici.

Il s'agit d'une rotation de 180 degrés provenant de l'utilisateur qui utilise des solutions de contournement aléatoires pour les développeurs dans un thread de dépannage.

Désolé, mais je crois que si des solutions de contournement sont suggérées qui peuvent avoir un impact sur l'ensemble de votre système, discuter d'une restauration est juste une bonne pratique. Cela ne correspond peut-être pas à la portée de ce fil, mais il semble que cette option soit très intéressante pour de nombreuses personnes en ce moment. Pourquoi vous décidez de devenir soudainement un pseudo modérateur est comique.

Essayez de demander sur l'IRC de Debian ou sur un autre canal de support pour votre distribution. C'est hors sujet ici.

Il s'agit d'une rotation de 180 degrés provenant de l'utilisateur qui utilise des solutions de contournement aléatoires pour les développeurs dans un thread de dépannage.

Désolé, mais je crois que si des solutions de contournement sont suggérées qui peuvent avoir un impact sur l'ensemble de votre système, discuter d'une restauration est juste une bonne pratique. Cela ne correspond peut-être pas à la portée de ce fil, mais il semble que cette option soit très intéressante pour de nombreuses personnes en ce moment. Pourquoi vous décidez de devenir soudainement un pseudo modérateur est comique.

@ jake-hedges peut-être que vous ne faites pas attention (indice: vous ne l'êtes pas) mais je n'ai jamais suggéré que vous utilisiez un noyau aléatoire, quelqu'un d'autre l'a fait. Je suggère que tout cela "omg j'ai brisé mon système en essayant des noyaux!" discussion aller ailleurs, cela n'a rien à voir avec le sujet ici.

Pourquoi vous décidez de devenir soudainement un pseudo modérateur est comique.

Le rapport signal / bruit dans ce numéro est très élevé, donc ceux d'entre nous qui se soucient réellement de suivre les problèmes avec ce jeu doivent parcourir les commentaires des assclowns comme vous qui préfèrent parler de la façon de réparer votre installation de distribution que vous avez foirée. essayer des suggestions que vous ne comprenez pas.

Alors, allez demander du support pour réparer votre installation linux ailleurs (que vous avez évidemment cassé, lol), ce n'est pas un forum de support debian.

Bien que l'installation d'un autre noyau comme solution de contournement soit intéressante pour nous qui voulons jouer maintenant, cela n'est pas vraiment pertinent pour que le jeu fonctionne correctement puisque Steam n'est pas sur le point d'installer un nouveau noyau pour faire fonctionner correctement un jeu avec proton. Donc, avec la logique de @craftyguy , aucune autre discussion ne devrait avoir lieu autour de cela. L'autre option est d'autoriser quelques brefs guides (non d'assistance) sur la façon de procéder pour diverses distributions.

Bien que je commente déjà cela, je pourrais aussi bien ajouter que pour NixOS, il n'y a pas de noyau zen dans nixpkgs, mais il est très facile d'ajouter le correctif à votre configuration.nix comme ceci:

boot.kernelPatches = [
      { name = "fsync-support"; patch = ./linux-v5.4-fsync.patch; }
    ];

linux-v5.4-fsync.patch est pris d' ici . C'est tout ce qu'on peut en dire. Il a fallu un certain temps pour compiler le noyau et j'ai dû limiter le nombre de cœurs à utiliser ou cela bloquerait mon système pour une raison quelconque.

La solution de contournement du noyau est erronée à bien des égards. Ne l'utilisez pas à moins que vous ne souhaitiez vraiment jouer à un jeu avec moins de plantages lorsqu'il est en accès anticipé. IMHO cela fonctionne bien sur le noyau stable sur ArchLinux avec Proton 5.5 GE + dotnet472 et dotnet core des commentaires précédents. J'ai un gameplay de 13 heures avec occasionnellement 1 à 2 heures de gameplay sans problème. Enregistrez-le fréquemment et tout ira bien. Et aussi, allez-y doucement, ce n'est qu'un jeu.

@CrafterSvK Je crois comprendre que la motivation pour utiliser un noyau avec le correctif fsync de Valve ne réduit pas les plantages. Le jeu semble utiliser certaines primitives de synchronisation Windows qui ont un parallèle sous Linux (eventfd) mais qui ne sont pas tout à fait identiques. Les développeurs de Proton ont écrit un correctif de noyau pour permettre à un thread d'attendre sur plusieurs futex de la même manière que sur Windows, mais il n'a pas encore passé les normes élevées de Linux et n'est donc pas fusionné en amont.

Je suppose que l'absence de ces primitifs oblige Wine à les imiter de manière extrêmement inefficace, et produit un blocage brutal dans le jeu à chaque fois qu'il enregistre, ce qui est très souvent. J'ai joué de nombreuses heures avec et c'est jouable mais douloureux. J'expérimenterai le noyau zen plus tard dans la journée, et s'il fonctionne, cela vaudrait la peine de démarrer juste pour jouer à ce jeu. "Enregistrer fréquemment" est un conseil exceptionnellement mauvais car le problème traité ici est que la sauvegarde du jeu prend plus de 2 minutes.

Je vois des suggestions de liens symboliques pour ignorer le lanceur, mais une solution plus propre qui ne vous oblige pas à répéter le processus à chaque patch est de dire à Steam d'exécuter le bon binaire pour commencer dans les options de lancement. Voici le mien: echo %command% && exec /usr/share/steam/compatibilitytools.d/proton-ge-custom/proton waitforexitandrun "/home/$USER/.local/share/Steam/steamapps/common/Mount & Blade II Bannerlord/bin/Win64_Shipping_Client/Bannerlord.exe"

Si vous utilisez un autre répertoire Proton, vous pouvez obtenir la vraie commande% Steam en cours d'exécution en lançant le jeu avec echo %command% > ~/cmd .

@CrafterSvK Je crois comprendre que la motivation pour utiliser un noyau avec le correctif fsync de Valve ne réduit pas les plantages. Le jeu semble utiliser certaines primitives de synchronisation Windows qui ont un parallèle sous Linux (eventfd) mais qui ne sont pas tout à fait identiques. Les développeurs de Proton ont écrit un correctif de noyau pour permettre à un thread d'attendre sur plusieurs futex de la même manière que sur Windows, mais il n'a pas encore passé les normes élevées de Linux et n'est donc pas fusionné en amont.

Je suppose que l'absence de ces primitives oblige Wine à les émuler d'une manière extrêmement inefficace, et produit un blocage _brutal_ dans le jeu à chaque fois qu'il enregistre, ce qui est très souvent. J'ai joué de nombreuses heures avec et c'est jouable mais douloureux. J'expérimenterai le noyau zen plus tard dans la journée, et s'il fonctionne, cela vaudrait la peine de démarrer juste pour jouer à ce jeu. "Enregistrer fréquemment" est un conseil exceptionnellement mauvais car le problème traité ici est que la sauvegarde du jeu prend plus de 2 minutes.

J'économise en 1 à 2 secondes avec la version GE de proton, donc mes conseils sont basés sur l'expérience.

@KimmoKM quelle version de XanMod utilisez-vous? J'ai essayé XanMod et (après avoir corrigé les pilotes nvidia totalement bloqués) les choses sont décidément pires de mon côté.

On dirait que les correctifs du noyau FUTEX_WAIT_MULTIPLE ont eu un assez bon impact sur une nouvelle version non- protontricks 'd pour moi aussi (en utilisant le correctif de linux-tkg , combiné avec une version modifiée de Slackware64-current de kernel-generic.SlackBuild ). Les performances et les temps de sauvegarde sont encore nettement pires qu'avec dotnet472 (encore beaucoup de bégaiement, en particulier sur la carte de la campagne), mais les temps de sauvegarde sont nettement meilleurs qu'avec un préfixe par défaut et pas de FUTEX_WAIT_MULTIPLE (au point où "enregistrer souvent" est en fait viable, car économiser prend environ 10 à 30 secondes au lieu de plusieurs minutes), et c'est nettement moins crash qu'avec dotnet472 (juste joué pendant plusieurs heures d'affilée avec zéro crash, alors qu'avant je J'aurais de la chance si je faisais une heure).

Je vois des suggestions de liens symboliques pour ignorer le lanceur, mais une solution plus propre qui ne vous oblige pas à répéter le processus à chaque patch est de dire à Steam d'exécuter le bon binaire pour commencer dans les options de lancement.

Si vous faites juste les liens symboliques ManagedStarter.exeBannerlord.exe et ManagedStarter_BE.exeBannerlord_BE.exe , ceux-ci devraient survivre aux correctifs et continuer à faire fonctionner le lanceur (ou du moins les deux ont été vrais dans mon cas, à travers à peu près tous les correctifs des deux dernières semaines et des dizaines de préfixes avec et sans aucune version de dotnet ). Si vous contournez complètement le lanceur, alors oui, les options de lancement sont un moyen propre de le faire.

@KimmoKM quelle version de XanMod utilisez-vous? J'ai essayé XanMod et (après avoir corrigé les pilotes nvidia totalement bloqués) les choses sont décidément pires de mon côté.

5.5.15-xanmod1 à partir de ce référentiel . J'utilise le GPU AMD.

@KimmoKM c'est la même version que j'ai tirée ...
$cat /proc/version
Linux version 5.5.15-xanmod1 (root@mascote) (gcc version 9.3.0 (Debian 9.3.0-8)) #0 SMP PREEMPT Thu Apr 2 10:37:55 -03 2020

Peut-être que Nvidia / AMD pourrait être le problème. J'utilise le Proton 5.5-1 de GloriousEggroll. Après le changement, le lanceur de jeu fonctionne bien, mais lorsque j'essaie de lancer le jeu, il s'ouvre sur un écran blanc puis se bloque immédiatement. L'uploader crash fonctionne maintenant d'une manière ou d'une autre.

@KimmoKM c'est la même version que j'ai tirée ...
$cat /proc/version
Linux version 5.5.15-xanmod1 (root@mascote) (gcc version 9.3.0 (Debian 9.3.0-8)) #0 SMP PREEMPT Thu Apr 2 10:37:55 -03 2020

Peut-être que Nvidia / AMD pourrait être le problème. J'utilise le Proton 5.5-1 de GloriousEggroll. Après le changement, le lanceur de jeu fonctionne bien, mais lorsque j'essaie de lancer le jeu, il s'ouvre sur un écran blanc puis se bloque immédiatement. L'uploader crash fonctionne maintenant d'une manière ou d'une autre.

Si je ne me trompe pas, le correctif est documenté ici: https://gist.github.com/Tercus/3db75788df3c7e1efee06904bb985419 sous Dépannage.

@allquixotic Malheureusement non ... J'utilise des pilotes Nvidia, pas AMD. Les choses fonctionnaient généralement pour moi, mais avec des accidents fréquents. le noyau xanmod semble avoir cassé ma configuration. Je vais jouer un peu plus et voir si je peux le faire fonctionner, mais je devrai peut-être revenir en arrière.

Processeur AMD® Ryzen Threadripper 1900x 8 cœurs × 16
NVidia 2060
Ubuntu 19.10 avec noyau xanmod (5.5.15-xanmod1)


ÉDITER

Corrigé: Il s'avère que les pilotes Nvidia étaient toujours le problème, il semble que vous ne puissiez pas installer de nouveaux pilotes avec l'interface graphique Ubuntu après le passage au nouveau noyau ... Encore un essai avec la ligne de commande et tout est opérationnel facilement.

Après des tests plus rigoureux aujourd'hui, je rétracte ma déclaration précédente. Les performances sont meilleures avec Dotnet 4.7 installé et utilisant le lanceur. Dotnet accélère également les temps de sauvegarde à quelques secondes, ainsi que les zones de chargement. Les performances générales pourraient nécessiter du travail, mais je pense que cela est lié au jeu lui-même.

@YellowApple Le chargement des mods via les options de lancement fonctionne.

Donc, pour les personnes qui contournent le lanceur en lançant Bannerlord.Native.exe place et qui ont des mods qu'ils souhaitent charger, peuvent l'utiliser comme option de lancement dans Steam.

%command%
 _MODULES_
*Native*SandBoxCore*CustomBattle*Sandbox*StoryMode*TheNameOfAMod*
_MODULES_

@allquixotic Malheureusement non ... J'utilise des pilotes Nvidia, pas AMD. Les choses fonctionnaient généralement pour moi, mais avec des accidents fréquents. le noyau xanmod semble avoir cassé ma configuration. Je vais jouer un peu plus et voir si je peux le faire fonctionner, mais je devrai peut-être revenir en arrière.

Processeur AMD® Ryzen Threadripper 1900x 8 cœurs × 16
NVidia 2060
Ubuntu 19.10 avec noyau xanmod (5.5.15-xanmod1)

ÉDITER

Corrigé: Il s'avère que les pilotes Nvidia étaient toujours le problème, il semble que vous ne puissiez pas installer de nouveaux pilotes avec l'interface graphique d'Ubuntu après le passage au nouveau noyau ... Encore un essai avec la ligne de commande et tout est opérationnel facilement.

J'utilise les derniers pilotes Nvidia avec le noyau Xanmod LTS (la dernière version stable 5.4.x) et cela fonctionne bien ici aussi.

@allquixotic Malheureusement non ... J'utilise des pilotes Nvidia, pas AMD. Les choses fonctionnaient généralement pour moi, mais avec des accidents fréquents. le noyau xanmod semble avoir cassé ma configuration. Je vais jouer un peu plus et voir si je peux le faire fonctionner, mais je devrai peut-être revenir en arrière.

Processeur AMD® Ryzen Threadripper 1900x 8 cœurs × 16
NVidia 2060
Ubuntu 19.10 avec noyau xanmod (5.5.15-xanmod1)

ÉDITER

Corrigé: Il s'avère que les pilotes Nvidia étaient toujours le problème, il semble que vous ne puissiez pas installer de nouveaux pilotes avec l'interface graphique d'Ubuntu après le passage au nouveau noyau ... Encore un essai avec la ligne de commande et tout est opérationnel facilement.

Je rencontre le même crash où il s'arrête juste à l'écran blanc avec un rapport de plantage. J'utilise Ubuntu 18.04.4 sur un MBP avec un GPU Intel et je n'ai pas encore réussi à surmonter ce crash d'écran blanc. Autant que je sache, vous semblez être le seul de ce fil à avoir subi ce crash, donc je suppose que c'est un problème de pilote. Ma question est la suivante: vos chauffeurs travaillaient-ils avec Bannerlord avant d'utiliser xanmod? Si tel est le cas, je sais que c'est ce sur quoi je dois me pencher, à moins que quelqu'un n'ait d'autres pensées utiles.

Il y a certainement quelque chose que le lanceur fait qui a un impact sur les temps de sauvegarde.
Je n'ai pas installé dotnet car il provoque des plantages et fsync activé pour obtenir des temps de sauvegarde décents.

Comme le lanceur ne se lance pas sans dotnet, je peux soit le contourner en renommant Bannerlord.Native.exe en TaleWorlds.MountAndBlade.Launcher.exe ce qui fait que Steam le lance à la place. On peut également créer un lien symbolique ou utiliser des options de lancement pour y parvenir.

Ou je peux renommer respectivement Bannerlord.exe et Bannerlord_BE.exe en ManagedStarter.exe et ManagedStarter_BE.exe pour faire fonctionner le lanceur, je ne sais pas pourquoi, il peut avoir été expliqué à un moment donné dans ce fil. L'approche du lien symbolique ou de l'option de lancement peut également y fonctionner.

En faisant le premier et en contournant le lanceur, j'obtiens environ 9 secondes de sauvegarde, lorsque j'utilise la dernière approche pour utiliser le lanceur, j'obtiens environ 16 secondes de sauvegarde.

@remosasso Oui, mes pilotes fonctionnaient avant d'utiliser xanmod. Si vous allez à la section à propos des paramètres, vous devriez voir vos graphiques répertoriés ... Avant de mettre à jour les pilotes, il n'a pas identifié ma carte comme NVidia ... J'ai mis à jour avec ce qui suit:

$ sudo add-apt-repository ppa: drivers-graphiques / ppa
mise à jour de $ sudo apt
$ sudo apt-get install nvidia-driver-440

Redémarrer

@remosasso Oui, mes pilotes fonctionnaient avant d'utiliser xanmod. Si vous allez à la section à propos des paramètres, vous devriez voir vos graphiques répertoriés ... Avant de mettre à jour les pilotes, il n'a pas identifié ma carte comme NVidia ... J'ai mis à jour avec ce qui suit:

$ sudo add-apt-repository ppa: drivers-graphiques / ppa
mise à jour de $ sudo apt
$ sudo apt-get install nvidia-driver-440

Redémarrer

Merci. Cependant, il semble que mes pilotes sont bien installés et donc pas de chance pour moi là-bas. Avez-vous rencontré quelqu'un d'autre avec le problème de crash de l'écran blanc? J'obtiens le même crash quel que soit le Proton que j'utilise, que j'utilise dotnet 472 ou que je change des fichiers .exe. Les pilotes semblent être le problème logique, mais ils ne semblent pas l'être.

Je suis confronté au même crash d'écran blanc sur nvidia. L'enregistrement automatique a été créé lors de l'exécution sous Linux et il se bloque quelques secondes après le chargement de l'enregistrement automatique. Le jeu fonctionne bien à partir de la même sauvegarde sur Windows

Quelqu'un a-t-il déjà fait des comparaisons de performances entre Proton et Windows?

Je ne parviens pas à trouver des jeux en multijoueur dans la branche bêta 1.1 et je reviens à la branche stable, je ne parviens pas à me connecter. Quelqu'un d'autre capable de jouer au mp?

Éditer:
Il semble que mp soit cassé pour tout le monde (non confirmé) sur la branche bêta: https://forums.taleworlds.com/index.php?threads/e1 -1-0-cant-test-new-patch-car-cant-find- un match.413059 /

Je vais réessayer la branche stable et voir si je peux me connecter maintenant.

Je ne parviens pas à trouver des jeux en multijoueur dans la branche bêta 1.1 et je reviens à la branche stable, je ne parviens pas à me connecter. Quelqu'un d'autre capable de jouer au mp?

Éditer:
Il semble que mp soit cassé pour tout le monde (non confirmé) sur la branche bêta: https://forums.taleworlds.com/index.php?threads/e1 -1-0-cant-test-new-patch-car-cant-find- un match.413059 /

Je vais réessayer la branche stable et voir si je peux me connecter maintenant.

J'ai juste pu me connecter en multijoueur sur la branche stable. J'ai eu un problème il y a environ deux nuits où je n'ai pas pu me connecter, mais il s'est résolu le lendemain.

Je ne parviens pas à me connecter sur une branche stable pour le moment. Peut-être que quelque chose est gâché lors du retour de la version bêta?

Je ne parviens pas à me connecter sur une branche stable pour le moment. Peut-être que quelque chose est gâché lors du retour de la version bêta?

Cela m'est arrivé il y a plusieurs nuits avant même que la bêta n'existe. Je pensais qu'ils avaient finalement découvert que je n'étais pas sous Windows et m'ont banni. Il a recommencé à fonctionner le lendemain.

Cela fonctionne pour moi maintenant, et je jouais à SP sur la version bêta plus tôt avant de revenir à stable pour MP.

En utilisant l'option PROTON_LOG=1 , je trouve ceci dans le journal:

[000000000000006F:] EXCEPTION handling: System.Net.Sockets.SocketException: Connection reset by peer.
...
[000000000000006F:] EXCEPTION handling: System.IO.IOException: Unable to read data from the transport connection: Connection reset by peer.
...
[000000000000006E:] EXCEPTION handling: System.Net.Sockets.SocketException: Error looking up error string
[000000000000006E:] EXCEPTION handling: System.IO.IOException: Unable to write data to the transport connection: Error looking up error string.
[0000000000000067:] EXCEPTION handling: System.IO.IOException: The authentication or decryption has failed.
...
[0000000000000073:] EXCEPTION handling: System.Net.WebException: Error: SecureChannelFailure (The authentication or decryption has failed.)
...
[0000000000000073:] EXCEPTION handling: System.AggregateException: One or more errors occurred. (Error: SecureChannelFailure (The authentication or decryption has failed.))
...
[0000000000000066:] EXCEPTION handling: System.Net.WebException: The operation has timed out.
...

Je devrais ajouter qu'il s'agit du préfixe par défaut fonctionnant sur un noyau compatible fsync. J'ai essayé avec et sans VPN.

La nouvelle version bêta 1.1.0 semble résoudre plus de plantages. Je récupère même une sauvegarde corrompue à partir de la version 1.0.10. J'utilise proton-gtk "vanille". Je remarque encore parfois des problèmes de performances, un gain de temps d'environ 10 à 12 secondes et des plantages aléatoires après 3-4 heures, mais c'est clairement jouable.

J'ai mis plus de 60 heures dans ce jeu sur Linux. J'ai vécu avec le temps de sauvegarde de plus de 30 secondes pendant un certain temps, mais l'utilisation de Proton 5.5-GE avec dotnet472 et dotnetcore a réduit mes temps de sauvegarde à moins de 5 secondes.

.NET core est open source, peut-être que wine / proton devrait envisager de le regrouper en tant que composant optionnel comme ils le font avec gecko.

Mon jeu plante lors du lancement. Je suis sur la version e1.1.0 - Beta avec Proton-5.5-GE-1

❯ rm -rf ~/.steam/steam/steamapps/compatdata/261550
❯ # Launch the game
❯ protontricks --version
protontricks (1.4.1)
❯ winetricks --version
20191224 - sha256sum: 1582b249d827074bb4c456b6ee5f55293a5fea5a66245f5cbe474f771c65e820
❯ protontricks 261550 dotnet472 2&>1 > log


Sortie de journal

------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20191224 - sha256sum: 7b91df1f0a0c7be5e085edce2737ea9d8cea60b6ed891e04f041a46e61242131 with wine-5.0 and WINEARCH=win64
Executing w_do_call dotnet472
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet472 
------------------------------------------------------
This package (dotnet472) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
Current Wine does not have Wine bug 42170, so not applying workaround
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
uninstaller: The application with GUID '{8938A429-407D-5208-903D-37777470D766}' was not found
------------------------------------------------------
Working around wine bug 34803 
------------------------------------------------------
reg: The system was unable to find the specified registry key or value
reg: The system was unable to find the specified registry key or value
reg: The system was unable to find the specified registry key or value
Executing rm -f /home/tanner/.steam/steam/steamapps/compatdata/261550/pfx/dosdevices/c:/windows/system32/mscoree.dll
Executing rm -f /home/tanner/.steam/steam/steamapps/compatdata/261550/pfx/dosdevices/c:/windows/syswow64/mscoree.dll
Executing w_do_call dotnet462
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet462 
------------------------------------------------------
This package (dotnet462) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
Executing w_do_call dotnet461
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet461 
------------------------------------------------------
This package (dotnet461) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
Executing w_do_call dotnet46
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet46 
------------------------------------------------------
This package (dotnet46) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
Executing w_do_call dotnet45
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet45 
------------------------------------------------------
This package (dotnet45) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
Executing w_do_call dotnet40
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_dotnet40 
------------------------------------------------------
This package (dotnet40) may not fully work on a 64-bit installation. 32-bit prefixes may work better.
------------------------------------------------------
------------------------------------------------------
dotnet40 does not yet fully work or install on wine.  Caveat emptor.
------------------------------------------------------
Current Wine does not have Wine bug 42701, so not applying workaround
Executing w_do_call remove_mono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_remove_mono 
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
Executing w_do_call winxp
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing load_winxp 
The operation completed successfully
Setting Windows version to winxp
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine regedit C:\windows\Temp\set-winver.reg
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine64 regedit C:\windows\Temp\set-winver.reg
------------------------------------------------------
Running /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wineserver -w. This will hang until all wine processes in prefix=/home/tanner/.steam/steam/steamapps/compatdata/261550/pfx terminate
------------------------------------------------------
Executing cd /home/tanner/.cache/winetricks/dotnet40
Unhandled exception: C++ exception(object = 0x0032f594, type = 0x1009be00) in 32-bit code (0x7b032c45).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:7b032c45 ESP:0032f494 EBP:0032f4f8 EFLAGS:00000212(   - --  I   -A- - )
 EAX:0032f4a0 EBX:e06d7363 ECX:0032f490 EDX:0032f4b4
 ESI:100187cc EDI:00000000
Stack dump:
0x0032f494:  0032f534 0000000c 7bc75a1c e06d7363
0x0032f4a4:  00000001 00000000 7b032c45 00000003
0x0032f4b4:  19930520 0032f594 1009be00 0032fe18
0x0032f4c4:  00641a00 0032f4e8 00860000 00641a58
0x0032f4d4:  0032f4e8 0032f500 00110000 00000000
0x0032f4e4:  00000000 0032f528 7bc769e5 0032f510
Backtrace:
=>0 0x7b032c45 RaiseException+0x50(code=<couldn't compute location>, flags=<couldn't compute location>, count=<couldn't compute location>, args=<couldn't compute location>) [Z:\build\wine-5.0\dlls\kernelbase\debug.c:319] in kernelbase (0x0032f4f8)
  1 0x100814f2 in setupengine (+0x814f1) (0x0032f540)
  2 0x10066a29 EntryPoint+0xffffffff() in setupengine (0x0032f5b0)
  3 0x100636d8 EntryPoint+0xffffffff() in setupengine (0x0032f5d0)
  4 0x10061338 EntryPoint+0xffffffff() in setupengine (0x0032f608)
  5 0x10035a14 EntryPoint+0xffffffff() in setupengine (0x0032f678)
  6 0x1006b498 EntryPoint+0xffffffff() in setupengine (0x0032fdd8)
  7 0x1005fa6e EntryPoint+0xffffffff() in setupengine (0x0032fe48)
  8 0x10058323 EntryPoint+0xffffffff() in setupengine (0x0032fe9c)
  9 0x00402928 EntryPoint+0xffffffff() in setup (0x0032ff30)
  10 0x7b454c52 call_process_entry+0x11() in kernel32 (0x0032ff48)
  11 0x7b455070 start_process+0xdf(entry=<couldn't compute location>, peb=<couldn't compute location>) [Z:\build\wine-5.0\dlls\kernel32\process.c:153] in kernel32 (0x0032ffd8)
  12 0x7b454c5e __wine_start_process+0x9() in kernel32 (0x0032ffec)
0x7b032c45 RaiseException+0x50 [Z:\build\wine-5.0\dlls\kernelbase\debug.c:319] in kernelbase: addl  $12,%esp
Unable to access file 'Z:\build\wine-5.0\dlls\kernelbase\debug.c'
Modules:
Module  Address         Debug info  Name (112 modules)
PE    400000-  415000   Export          setup
PE  10000000-100c8000   Export          setupengine
PE  6cd00000-6cd24000   Deferred        sqmapi
ELF 7b000000-7b0e0000   Dwarf           kernelbase<elf>
  \-PE  7b020000-7b0e0000   \               kernelbase
ELF 7b400000-7b510000   Dwarf           kernel32<elf>
  \-PE  7b420000-7b510000   \               kernel32
ELF 7bc00000-7beb6000   Deferred        ntdll<elf>
  \-PE  7bc30000-7beb6000   \               ntdll
ELF 7c000000-7c006000   Deferred        <wine-loader>
ELF 7ccd2000-7cceb000   Deferred        kerberos<elf>
  \-PE  7cce0000-7cceb000   \               kerberos
ELF 7cceb000-7cd2a000   Deferred        uxtheme<elf>
  \-PE  7cd00000-7cd2a000   \               uxtheme
ELF 7cd2a000-7cd33000   Deferred        libxfixes.so.3
ELF 7cd33000-7cd40000   Deferred        libxcursor.so.1
ELF 7ce40000-7ce55000   Deferred        libxi.so.6
ELF 7ce55000-7ce5a000   Deferred        libxcomposite.so.1
ELF 7ce5a000-7cedb000   Deferred        setupapi<elf>
  \-PE  7ce70000-7cedb000   \               setupapi
ELF 7cedb000-7cf0a000   Deferred        libxcb.so.1
ELF 7cf0a000-7d05d000   Deferred        libx11.so.6
ELF 7d05d000-7d100000   Deferred        winex11<elf>
  \-PE  7d080000-7d100000   \               winex11
ELF 7d124000-7d133000   Deferred        libxrandr.so.2
ELF 7d133000-7d141000   Deferred        libxrender.so.1
ELF 7d141000-7d149000   Deferred        libxxf86vm.so.1
ELF 7d149000-7d15f000   Deferred        libxext.so.6
ELF 7d15f000-7d17c000   Deferred        libz.so.1
ELF 7d17c000-7d1bc000   Deferred        libpng16.so.16
ELF 7d1bc000-7d1cf000   Deferred        libbz2.so.1
ELF 7d1cf000-7d295000   Deferred        libfreetype.so.6
ELF 7d2ca000-7d2e3000   Deferred        libresolv.so.2
ELF 7d2e3000-7d311000   Deferred        iphlpapi<elf>
  \-PE  7d2f0000-7d311000   \               iphlpapi
ELF 7d311000-7d356000   Deferred        netapi32<elf>
  \-PE  7d320000-7d356000   \               netapi32
ELF 7d356000-7d394000   Deferred        secur32<elf>
  \-PE  7d360000-7d394000   \               secur32
ELF 7d394000-7d3b4000   Deferred        jsproxy<elf>
  \-PE  7d3a0000-7d3b4000   \               jsproxy
ELF 7d3b4000-7d3f9000   Deferred        winhttp<elf>
  \-PE  7d3c0000-7d3f9000   \               winhttp
ELF 7d3f9000-7d40f000   Deferred        psapi<elf>
  \-PE  7d400000-7d40f000   \               psapi
ELF 7d40f000-7d429000   Deferred        userenv<elf>
  \-PE  7d420000-7d429000   \               userenv
ELF 7d429000-7d449000   Deferred        bcrypt<elf>
  \-PE  7d430000-7d449000   \               bcrypt
ELF 7d449000-7d4ff000   Deferred        crypt32<elf>
  \-PE  7d460000-7d4ff000   \               crypt32
ELF 7d4ff000-7d53a000   Deferred        wintrust<elf>
  \-PE  7d510000-7d53a000   \               wintrust
ELF 7d53a000-7d55d000   Deferred        odbccp32<elf>
  \-PE  7d540000-7d55d000   \               odbccp32
ELF 7d55d000-7d579000   Deferred        mspatcha<elf>
  \-PE  7d560000-7d579000   \               mspatcha
ELF 7d579000-7d595000   Deferred        imagehlp<elf>
  \-PE  7d580000-7d595000   \               imagehlp
ELF 7d595000-7d5b2000   Deferred        sxs<elf>
  \-PE  7d5a0000-7d5b2000   \               sxs
ELF 7d5b2000-7d5da000   Deferred        cabinet<elf>
  \-PE  7d5c0000-7d5da000   \               cabinet
ELF 7d5da000-7d602000   Deferred        imm32<elf>
  \-PE  7d5e0000-7d602000   \               imm32
ELF 7d602000-7d651000   Deferred        usp10<elf>
  \-PE  7d610000-7d651000   \               usp10
ELF 7d651000-7d7a7000   Deferred        comctl32<elf>
  \-PE  7d680000-7d7a7000   \               comctl32
ELF 7d7a7000-7d7e5000   Deferred        ws2_32<elf>
  \-PE  7d7c0000-7d7e5000   \               ws2_32
ELF 7d7e5000-7d80d000   Deferred        mpr<elf>
  \-PE  7d7f0000-7d80d000   \               mpr
ELF 7d80d000-7d88c000   Deferred        wininet<elf>
  \-PE  7d820000-7d88c000   \               wininet
ELF 7d88c000-7d933000   Deferred        urlmon<elf>
  \-PE  7d8b0000-7d933000   \               urlmon
ELF 7d933000-7da62000   Deferred        msi<elf>
  \-PE  7d960000-7da62000   \               msi
ELF 7da62000-7db99000   Deferred        oleaut32<elf>
  \-PE  7da90000-7db99000   \               oleaut32
ELF 7db99000-7dc34000   Deferred        rpcrt4<elf>
  \-PE  7dbc0000-7dc34000   \               rpcrt4
ELF 7dc34000-7dda0000   Deferred        ole32<elf>
  \-PE  7dc70000-7dda0000   \               ole32
ELF 7dda0000-7ddc8000   Deferred        shcore<elf>
  \-PE  7ddb0000-7ddc8000   \               shcore
ELF 7ddc8000-7de2d000   Deferred        shlwapi<elf>
  \-PE  7dde0000-7de2d000   \               shlwapi
ELF 7de2d000-7e7d6000   Deferred        shell32<elf>
  \-PE  7de60000-7e7d6000   \               shell32
ELF 7e7d6000-7e8b1000   Deferred        msvcrt<elf>
  \-PE  7e800000-7e8b1000   \               msvcrt
ELF 7e8b1000-7e8c8000   Deferred        version<elf>
  \-PE  7e8c0000-7e8c8000   \               version
ELF 7e8c8000-7ea14000   Deferred        gdi32<elf>
  \-PE  7e8f0000-7ea14000   \               gdi32
ELF 7ea14000-7ec46000   Deferred        user32<elf>
  \-PE  7ea50000-7ec46000   \               user32
ELF 7ec46000-7ecca000   Deferred        advapi32<elf>
  \-PE  7ec60000-7ecca000   \               advapi32
ELF 7eeff000-7f000000   Deferred        libm.so.6
ELF f7afe000-f7b6a000   Deferred        msxml3<elf>
  \-PE  f7b10000-f7b6a000   \               msxml3
ELF f7bb0000-f7bb8000   Deferred        libxdmcp.so.6
ELF f7bb8000-f7bbd000   Deferred        libxau.so.6
ELF f7bc1000-f7bc7000   Deferred        libdl.so.2
ELF f7bc7000-f7da7000   Deferred        libc.so.6
ELF f7da7000-f7dc9000   Deferred        libpthread.so.0
ELF f7dc9000-f7f7d000   Dwarf           libwine.so.1
ELF f7f81000-f7fab000   Deferred        ld-linux.so.2
ELF f7fae000-f7fb0000   Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 dotNetFx40_Full_x86_x64.exe
    00000028    0
    00000009    0
0000000e services.exe
    00000025    0
    0000001c    0
    00000015    0
    00000010    0
    0000000f    0
00000011 plugplay.exe
    00000019    0
    00000018    0
    00000012    0
00000013 explorer.exe
    00000022    0
    00000021    0
    0000001f    0
    00000014    0
0000001a winedevice.exe
    00000020    0
    0000001e    0
    0000001d    0
    0000001b    0
00000023 winedevice.exe
    00000027    0
    00000026    0
    00000024    0
0000002c (D) C:\9121dba59fb375d0b974\Setup.exe
    00000030    0
    0000002d    0 <==
System information:
    Wine build: wine-5.0
    Platform: i386 (WOW64)
    Version: Windows XP
    Host system: Linux
    Host version: 4.19.108
Using native override for following DLLs: mscoree
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine regedit C:\windows\Temp\override-dll.reg
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine64 regedit C:\windows\Temp\override-dll.reg
The operation completed successfully
The operation completed successfully
The operation completed successfully
Setting Windows version to default
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine regedit C:\windows\Temp\set-winver.reg
Executing /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wine64 regedit C:\windows\Temp\set-winver.reg
------------------------------------------------------
Running /nix/store/rq1ra5a2fki62dmw2yc3d3750q0avisw-wine-wow-5.0/bin/wineserver -w. This will hang until all wine processes in prefix=/home/tanner/.steam/steam/steamapps/compatdata/261550/pfx terminate
------------------------------------------------------
------------------------------------------------------
dotnet40 install completed, but installed file /home/tanner/.steam/steam/steamapps/compatdata/261550/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found
------------------------------------------------------

L'erreur des applications réelles de lancement du jeu est:

ERROR: ld.so: object '/home/tanner/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

Je ne parviens toujours pas à me connecter au mode multijoueur sur la branche stable (e1.0.10).

@agates vous n'avez pas eu de problèmes pour lancer le jeu après le redémarrage?
Je le réinstalle pour voir s'il corrige les paramètres. Hier soir, il a bien fonctionné, mais aujourd'hui il n'a pas été lancé
Je dois exécuter protontricks 261550 dotnetcore pour l'installer après dotnet472 ?

@agates vous n'avez pas eu de problèmes pour lancer le jeu après le redémarrage?
Je le réinstalle pour voir s'il corrige les paramètres. Hier soir, il a bien fonctionné, mais aujourd'hui il n'a pas été lancé
Je dois exécuter protontricks 261550 dotnetcore pour l'installer après dotnet472 ?

Tous les problèmes que j'ai eu ont été liés aux mods, jusqu'à présent.

dotnetcore n'est pas dans winetricks, il faut donc l'installer manuellement. @Aliervo a montré comment faire dans un commentaire ci-dessus .

@YellowApple
Nous avons fait l'actualité! Merci pour le correctif!

@Aliervo @agates J'obtiens cette sortie:

./proton run ~/dotnet-runtime-2.1.17-win-x64.exe
ProtonFixes[19625] INFO: Running protonfixes
ProtonFixes[19625] INFO: Running checks
ProtonFixes[19625] INFO: All checks successful
ProtonFixes[19625] INFO: No protonfix found for UNKNOWN (261550)

Il me manque quelque chose?

@Aliervo @agates J'obtiens cette sortie:

./proton run ~/dotnet-runtime-2.1.17-win-x64.exe
ProtonFixes[19625] INFO: Running protonfixes
ProtonFixes[19625] INFO: Running checks
ProtonFixes[19625] INFO: All checks successful
ProtonFixes[19625] INFO: No protonfix found for UNKNOWN (261550)

Il me manque quelque chose?

Le fichier dotnet-runtime-2.1.17-win-x64.exe dans votre répertoire personnel?

J'obtiens cette sortie exacte lorsque l'emplacement spécifié n'existe pas.

Le mien est à ~/Downloads/dotnet-runtime-2.1.17-win-x64.exe , par exemple.

@agates ouais, tout est en place, c'est peut-être parce que je l'ai déjà installé?

Des tests

Des plans

J'ai essayé de tester certaines des suggestions que nous avons vues jusqu'à présent. J'essaierai d'autres combinaisons demain, qui pourraient inclure l'utilisation d'un noyau compatible fsync. J'essaierai également d'étendre les tests sur certaines des solutions les plus prometteuses, telles que la modification des paramètres graphiques sans plantage et la stabilité générale du jeu. Je mettrai à jour cet article, mais il peut également être consulté dans cet article .

La mise en place

Ma façon actuelle de tester est incroyablement basique. Je crée un nouveau préfixe et lance le jeu une fois pour obtenir la configuration de base de Steam. Ensuite, j'ajoute les composants que je souhaite tester. Si le nouveau test inclut les composants précédemment testés, je saute la création d'un nouveau préfixe (pas de nouveau préfixe lorsque je suis passé de vcrun2019 à vcrun20190 + dotnet472 ). Je lance ensuite le jeu, lance une nouvelle campagne, cours dans la zone d'entraînement, laisse-le, cours sur la carte du monde et enfin sauvegarde le jeu une fois. Je prolongerai les tests pour les solutions les plus prometteuses.


Au cas où vous voudriez connaître les spécifications de mon système

System:    Host: tobias-X570 Kernel: 5.5.0-050500rc5-generic x86_64 bits: 64 Desktop: KDE Plasma 5.18.4
           Distro: KDE neon User Edition 5.18
Machine:   Device: desktop System: Gigabyte product: X570 AORUS MASTER v: -CF serial: N/A
           Mobo: Gigabyte model: X570 AORUS MASTER v: x.x serial: N/A
           UEFI: American Megatrends v: F11 date: 12/06/2019
CPU:       8 core AMD Ryzen 7 3800X (-MT-MCP-) speed/max: 1897/3900 MHz
Graphics:  Card: Advanced Micro Devices [AMD/ATI] Device 7340
           Display Server: x11 (X.Org 1.19.6 ) drivers: ati,amdgpu (unloaded: modesetting,fbdev,vesa,radeon)
           Resolution: [email protected]
           OpenGL: renderer: Radeon RX 5500 XT (NAVI14, DRM 3.36.0, 5.5.0-050500rc5-generic, LLVM 9.0.1)
           version: 4.6 Mesa 20.1.0-devel (git-089e1fb 2020-04-09 bionic-oibaf-ppa)

Soyez avisé

Bien que mes tests puissent montrer des résultats prometteurs, ils ne montrent pas à quel point le jeu est stable à long terme. Tout ce que j'ai fait lors de mes tests a été d'ouvrir le jeu et de démarrer une nouvelle campagne, de quitter les terrains de test et de sauvegarder le jeu.

Les résultats (jusqu'à présent)

| Version du jeu | vcrun 2019 | dotnet 472 | dotnet 480 | .Net-Core 2.1.17 | .NET-Core 3.1.3 | Terrain d'entraînement FPS | Carte du monde FPS | Gagnez du temps | Diffusion lente * |
|: -: |: -: |: -: |: -: |: -: |: -: |: -: |: -: |: -: |: -: |
| 1.1.0 | 🔲 | 🔲 | 🔲 | 🔲 | 🔲 | 45-50 | 56-72 | 1:12 | non |
| 1.1.0 | ☑️ | 🔲 | 🔲 | 🔲 | 🔲 | 45-50 | 56-72 | 1:28 | non |
| 1.1.0 | ☑️ | ☑️ | 🔲 | 🔲 | 🔲 | 69-74 | 65-75 | 0:02 | non |
| 1.1.0 | 🔲 | ☑️ | 🔲 | 🔲 | 🔲 | 69-74 | 66-79 | 0:02 | non |

* cela fait référence à l'effet d'un jeu lent alors que tous les objets sont chargés lors de l'entrée dans une nouvelle zone

@matheo vous devriez avoir une fenêtre d'installation même si elle est déjà installée. Vérifiez peut-être votre dossier STEAM_COMPAT_DATA_PATH et compatibilitytools.d .

Quelqu'un a-t-il réussi à faire fonctionner correctement le son surround (par exemple 5.1)?

J'ai rencontré le problème suivant avec la version recommandée de Proton-5-5-GE chaque fois que j'essaie de lancer une fenêtre dans celle-ci (comme la fenêtre Bannerlord ou l'explorateur de protontricks):

000b:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
000b:err:winediag:nodrv_CreateWindow The explorer process failed to start.

Fait intéressant, par exemple, le lancement de l'installateur dotnet core avec wine-staging fonctionne bien, il semble donc être spécifique à cette version de Proton. Une idée de ce qui pourrait en être la cause ou comment la résoudre?

J'ai échangé mon préfixe (par défaut de vapeur) pour un avec dotnet472 et dotnetcore2 et maintenant je peux me connecter en multijoueur sur une branche stable. Je ne sais pas si vcrun2015 et vcrun2017 sont installés; ils ne sont pas répertoriés lors de l'exécution de protontricks 261550 list-installed .

C'est étrange de savoir comment je peux me connecter sur 1.1 beta avec un pfx par défaut (bien qu'il n'y ait pas de serveurs disponibles pour jouer).

J'ai rencontré le problème suivant avec la version recommandée de Proton-5-5-GE chaque fois que j'essaie de lancer une fenêtre dans celle-ci (comme la fenêtre Bannerlord ou l'explorateur de protontricks):

000b:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
000b:err:winediag:nodrv_CreateWindow The explorer process failed to start.

Fait intéressant, par exemple, le lancement de l'installateur dotnet core avec wine-staging fonctionne bien, il semble donc être spécifique à cette version de Proton. Une idée de ce qui pourrait en être la cause ou comment la résoudre?

Avez-vous essayé de supprimer le dossier compatdata/261550/ et d'installer toutes les dépendances, y compris dotnet472 et dotnetcore? Cela l'a fait fonctionner sur mon système.

Avez-vous essayé de supprimer le dossier compatdata/261550/ et d'installer toutes les dépendances, y compris dotnet472 et dotnetcore? Cela l'a fait fonctionner sur mon système.

J'ai essayé de supprimer le dossier et d'installer à nouveau dotent472 mais cela n'a pas semblé aider. Je n'ai pas pu installer dotnetcore dans ce cas car le programme d'installation ne semble pas démarrer en raison de la même erreur. J'ai également essayé la même chose avec la version 5.6-GE-1 d'il y a 2 heures, mais j'ai rencontré les mêmes problèmes.

Je ne sais pas si vcrun2015 et vcrun2017 sont installés; ils ne sont pas répertoriés lors de l'exécution de protontricks 261550 list-installed .

Je n'ai pas du tout installé vcrun dans ma configuration actuelle.

Peut confirmer que j'obtiens d'excellentes performances, des temps de sauvegarde d'environ 5 à 10 secondes et de très rares plantages avec Proton-GE, le noyau zen (pour les correctifs fsync) et un préfixe de proton normal créé et provisionné par Steam.

Pour toute autre personne sur un système NixOS, chargez le fichier suivant dans votre configuration.nix pour construire et installer le noyau zen: https://gist.github.com/hjones2199/11b45917a2944b692dac40015ea0fd41 Vous devrez probablement également désactiver votre boot.kernelPackages actuel expression pour éviter les conflits.

Pour tous les autres utilisateurs d'un nouveau noyau (j'utilise xanmod): j'ai également installé dotnetcore et jusqu'à présent, il semble être le meilleur des deux mondes - je n'ai pas encore connu un seul crash et les performances sont très bonnes. Parfois, les batailles accusent un retard très important, mais un redémarrage semble le corriger et le bégaiement de la carte de campagne a complètement disparu.

Toujours en train de planter lors de la modification des paramètres vidéo avec dotnet472 installé (et de nombreux autres plantages aléatoires), à moins que je ne l'ai installé de manière incorrecte? Y-a-t-il un moyen de vérifier? (J'ai utilisé protontricks 261550 installé sur la liste et dotnet 472 apparaît).

Parfois, les batailles accusent un retard très important, mais un redémarrage semble le corriger et le bégaiement de la carte de campagne a complètement disparu.

Le côté Windows a des problèmes de performances similaires et des fuites de mémoire, etc., on dirait donc que cela fonctionne très bien :).

J'ai rencontré le problème suivant avec la version recommandée de Proton-5-5-GE chaque fois que j'essaie de lancer une fenêtre dans celle-ci (comme la fenêtre Bannerlord ou l'explorateur de protontricks):

000b:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
000b:err:winediag:nodrv_CreateWindow The explorer process failed to start.

Fait intéressant, par exemple, le lancement de l'installateur dotnet core avec wine-staging fonctionne bien, il semble donc être spécifique à cette version de Proton.
J'ai essayé de supprimer le dossier et d'installer à nouveau dotent472 mais cela n'a pas semblé aider. Je n'ai pas pu installer dotnetcore dans ce cas car le programme d'installation ne semble pas démarrer en raison de la même erreur. J'ai également essayé la même chose avec la version 5.6-GE-1 d'il y a 2 heures, mais j'ai rencontré les mêmes problèmes.

J'ai essayé d'autres versions de Proton "vanilla" aussi maintenant (5.0-5 et même 4.2-9) et j'obtiens exactement la même erreur dans les logs donc cela ne semble pas être spécifique aux builds GE.

Edit: Après quelques recherches, j'ai trouvé # 2878 qui indique qu'il s'agit d'un problème spécifique à NTFS - déplacer le jeu sur mon SSD ext4 a résolu le problème

Peut confirmer que j'obtiens d'excellentes performances, des temps de sauvegarde d'environ 5 à 10 secondes et de très rares plantages avec Proton-GE, le noyau zen (pour les correctifs fsync) et un préfixe de proton normal créé et provisionné par Steam.

Pour toute autre personne sur un système NixOS, chargez le fichier suivant dans votre configuration.nix pour construire et installer le noyau zen: https://gist.github.com/hjones2199/11b45917a2944b692dac40015ea0fd41 Vous devrez probablement également désactiver votre boot.kernelPackages actuel expression pour éviter les conflits.

Ce problème est presque impossible à parcourir, donc je ne vous blâme pas de l'avoir manqué, mais j'ai déjà fourni une solution simple à cela en ajoutant simplement un correctif à votre noyau actuel et c'est très simple: https://github.com/ ValveSoftware / Proton / issues / 3706 # issuecomment -612160300

En gros, ajoutez le patch à votre configuration.nix comme ceci:
boot.kernelPatches = [{ name = "fsync-support"; patch = ./linux-v5.4-fsync.patch; }];
linux-v5.4-fsync.patch est pris d' ici . La compilation peut cependant prendre un certain temps.

En ce moment, si j'essaie d'entrer dans un siège, l'interface se bloque un peu et je ne peux rien, le jeu fonctionne bien, mais il semble que la souris ne répond plus; Je peux toujours déplacer la souris, mais elle scintille très vite. Je dois également appuyer sur Echap et Alt + Tab dans et hors du jeu pour faire apparaître le menu d'échappement.

Edit, cela avec seulement fsync et aucun correctif de protontricks. Si j'utilise également les correctifs de protontricks, le jeu se bloque à nouveau comme avant.

Le dernier patch (1.0.11) a cassé le jeu pour moi (testé avec un préfixe de vin propre) chaque fois que j'essaye d'aller à l'écran avec les fichiers de sauvegarde, j'obtiens cette exception:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object

Je peux cependant démarrer une nouvelle campagne mais j'obtiens la même exception en sélectionnant l'option "Enregistrer sous".

Mettre à jour:
@agates La branche beta fonctionne merci

@elovin Avez-vous essayé la branche beta (e1.1.0)?

On dirait que Bannerlord ne fonctionne pas avec primusrun le moment, mais j'ai réussi à le faire fonctionner sur un ordinateur portable avec des graphiques commutables nvidia en utilisant nvidia-xrun .

On dirait que Bannerlord ne fonctionne pas avec primusrun le moment, mais j'ai réussi à le faire fonctionner sur un ordinateur portable avec des graphiques commutables nvidia en utilisant nvidia-xrun .

Eh bien, rien ne fonctionne vraiment aussi bien avec Bumblebee et Primus. J'ai dû passer à xrun pour que la moitié des jeux fonctionne.

Devrait également fonctionner avec PRIME Render Offloading.

D'accord, je suppose que cela n'est probablement pas strictement lié à Bannerlord, mais encore une fois, peut-être que les bibliothèques que Steam installe sur le préfixe ou un autre facteur spécifique à Bannerlord changent quelque chose (je ne sais pas), alors je suppose que je pourrais aussi Eh bien, demandez ici: j'essaie d'exécuter protontricks pour dotnet472, mais cela se traduit par un plantage lorsque la boîte de dialogue "Extraction de fichiers" s'ouvre et la barre de progression se termine. dotnet48 protontricks échoue de la même manière. Sortie de la console

Des pointeurs?

bonjour, j'ai du mal à faire fonctionner bannerlord sur arch, j'ai essayé proton 5.5-GE et 5.6-GE-2. jusqu'à présent, j'ai une fenêtre pour ouvrir et afficher le curseur une fois avant de planter!

  • ma bibliothèque Steam est sur un disque dur (ntfs), qui est maintenant monté correctement et lié symboliquement (à partir de cette bibliothèque) pour pointer vers mon dossier linux compatdata

  • J'ai supprimé le dossier compatdata et lancé, puis fait protontricks 261550 dotnet472 - c'est ainsi que ma fenêtre de jeu s'affiche et que le curseur est visible pendant quelques secondes

voici le journal de steam / proton: https://gist.github.com/hadallen/336ffcf1f8ae7e73024898306bb6ac01

et le rapport de plantage de Windows / wine lorsqu'il démarre et plante. Je n'arrive pas à faire réapparaître le curseur et la fenêtre, le crash survient en premier. après, bannerlord est apparemment toujours en train de «tourner» à la vapeur, je ne peux pas l'arrêter. https://gist.github.com/hadallen/d7b00c97e492195f360b8589c5d67685

Je crains que ce ne soit qu'une erreur stupide de ma part quelque part, mais je ne sais pas quoi faire ici

edit1: j'ai finalement parcouru ce fil assez loin pour trouver le guide rédigé par Tercus. Je viens de traverser ça à nouveau et j'ai toujours le même problème

edit2 : j'étais presque prêt à abandonner, j'ai réinstallé bannerlord dans Steam

  1. protontricks 261550 dotnet48 pour commencer. Je ne voulais vraiment pas attendre les 30 minutes pour l'installation de dotnet472, alors j'ai essayé cela seul et cela a fonctionné --Ran dans Steam; écrasé
  2. installé vcrun2019 et le 2 dotnetcore (selon l'écriture de Tercus) --Ran à nouveau; COMMENCÉ! mais très lent et pas d'entrée de souris, plantant après avoir quitté les paramètres ... sonnait comme s'il n'utilisait pas le proton mis à jour
  3. C'était bizarre, car bannerlord avait sélectionné le proton 5.6-GE-1. cela m'a donné l'idée de désactiver "Activer Steam Play pour tous les autres titres" dans les paramètres Steam, et _voila_; ça marche très bien!

Puisque dotnetcore semble toujours utile, je mentionnerai ici que mon PR a été accepté et qu'il est maintenant dans winetricks!

Exécutez winetricks --self-update (en tant que root si vous avez installé avec votre gestionnaire de paquets) pour obtenir la dernière version, vous pouvez alors utiliser winetricks dotnetcore2 !

Astuce de pro: sur toute installation de winetricks, ajoutez -q pour le mettre en mode sans assistance et ne pas avoir à cliquer sur "Installer" sur un tas de fenêtres. Donc, ce qui précède serait winetricks -q dotnetcore2

@Aliervo j'obtiens une erreur de vin:
https://docs.microsoft.com/en-us/dotnet/framework/install/application-not-started?version= (null) & processName = rundll32.exe & platform = 0009 & osver = 3 & isServer = 0 & shimver = 4.0.30319.0
et puis celui-ci:
image
est-ce normal pour les installations 64 bits?

@matheo , pas sûr de l'erreur, mais winetricks installera les versions 32 et 64 bits de .Net Core. On en attend beaucoup.

Il vérifie également qu'il a installé corrigé, donc si vous ne voyez pas de message d'erreur après les deux installateurs, nous saurons que la première erreur n'a rien affecté.

J'ai des temps de sauvegarde très lents (1 min +) avec dotnet472 avec ou sans vcrun2019. Est-ce que quelqu'un sait si le correctif du noyau fsync est essentiel pour réduire les temps de sauvegarde / d'autres bonnes idées pour améliorer les temps de sauvegarde?

@rgreenblatt
Fsync accélère notamment les temps de sauvegarde pour presque tout le monde pour autant que je sache, donc cela vaut peut-être la peine d'essayer si vous êtes à l'aise avec l'exécution de noyaux personnalisés et / ou la compilation que vous possédez.

Une autre chose à faire est de contourner le lanceur si vous ne l'êtes pas déjà. Comme pour commencer Bannerlord.Native.exe au lieu de TaleWorlds.MountAndBlade.Launcher.exe . Cela peut être fait en les renommant ou en les liant symboliquement ou en définissant lequel lancer dans les options de lancement de Steam.

Pour des raisons inconnues, le lanceur utilisé double à peu près mes temps de sauvegarde lorsque j'utilise fsync et aucun autre réglage de protontricks. Je ne sais pas si cela s'applique dans un autre scénario, mais cela pourrait valoir la peine d'être tenté de toute façon.

Ma meilleure expérience a été avec fsync, ce changement de nom et aucun protontricks du tout. Relativement peu de plantages et environ 7 à 8 secondes de sauvegarde. Dotnet raccourcirait les temps de sauvegarde à environ 2 secondes mais introduirait beaucoup plus de plantages.

@rgreenblatt d' après ce que j'ai vu dans le reste de ce fil, dotnet était le correctif pour les longues périodes de sauvegarde, au détriment d'une certaine instabilité. Comme l'a dit albin-engstrom, fsync avait des performances de gain de temps bien pires. Tout cela étant dit, j'ai trouvé le jeu presque injouable sans un noyau compatible fsync, et je ne peux que le recommander assez.

Pour tout le monde, le multijoueur a-t-il fonctionné pour quelqu'un d'autre? Je n'ai pas pu me connecter depuis près d'une semaine. J'arrive à la page de connexion, et j'obtiens le cercle de malheur pendant quelques minutes avant qu'il ne me dise qu'il ne peut pas se connecter. Ceci sur les branches Beta et Stable.

Existe-t-il une différence entre Bannerlord.exe et Bannerlord.Native.exe? (excuses si cela se trouve quelque part dans le fil de discussion ci-dessus, je n'ai pas trouvé de moyen de rechercher sur les commentaires github)

J'ai pu réduire les temps de sauvegarde à moins de 10 secondes (au lieu de plus d'une minute) en installant https://liquorix.net/ (qui, je pense, a des correctifs fsync) et en utilisant Bannerlord.Native.exe au lieu de Bannerlord.exe. Je ne sais pas quel changement a été utile. Je pourrais faire plus de tests scientifiques plus tard.

@rgreenblatt Liquorix a fsync pour autant que je sache, il est donc probable que cela ait eu le plus d'impact et l'exécution de Bannerlord.Native.exe aidé un peu plus. Du moins, c'est mon expérience.

Quant à la différence avec Bannerlord.exe je ne sais pas vraiment. Exécuter le natif est le moyen officiel de contourner le lanceur, donc je l'utilise. Je suppose qu'il est modifié pour être exécuté seul alors que le non natif est destiné / ne fonctionne que lorsqu'il est exécuté par le lanceur.

Il y a un tas d'arguments que le lanceur ajoute lors de l'exécution de l'exe, donc peut-être que cela ne fonctionne pas correctement sans eux.

Liés à cela, parmi ces arguments se trouvent les mods à charger, que le lanceur gère normalement, donc lors du contournement du lanceur, tous les mods devraient être ajoutés manuellement en tant qu'arguments via les options de lancement de Steam.

J'ai expliqué comment cela se fait quelque part dans les commentaires ci-dessus, mais il n'y a en effet pas de bon moyen de rechercher des commentaires github, donc si vous voulez savoir comment le faire, je peux l'expliquer à nouveau. Cela prendra beaucoup moins de temps que la recherche d'un ancien commentaire.

Pour tout le monde, le multijoueur a-t-il fonctionné pour quelqu'un d'autre? Je n'ai pas pu me connecter depuis près d'une semaine. J'arrive à la page de connexion, et j'obtiens le cercle de malheur pendant quelques minutes avant qu'il ne me dise qu'il ne peut pas se connecter. Ceci sur les branches Beta et Stable.

Je suis capable de jouer sur une branche stable mais je n'ai pas pu le faire pendant environ un patch avant la version 1.1. Je l'ai fait fonctionner à nouveau en installant dotnet472 et / ou dotnetcore2 (je ne sais pas ce qui a fait la différence).

Pour moi, la solution dotnet provoquait des plantages toutes les 5 à 10 minutes de jeu, pire que les temps de sauvegarde de 2 minutes.
Je vais l'essayer avec liquorix, mais j'ai quelques questions concernant les commentaires ci-dessus sur le saut de lanceur. sans dotnet, le lanceur ne se lance pas du tout, le jeu se termine immédiatement. Comment le configurer dans les options de lancement pour passer en natif?

J'ai essayé de le configurer sur "Bannerlord.Native.exe" ou "bin / Win64_Shipping_Client / Bannerlord.Native.exe" mais je vais peut-être dans la mauvaise direction ici

@aradapilot Quelqu'un quelque part dans ce fil a dit comment le faire via les options de lancement, mais je ne le fais pas, donc je ne sais pas exactement comment cela se fait.
Personnellement, je renomme Bannerlord.Native.exe en TaleWorlds.MountAndBlade.Launcher.exe et supprime ou renomme l'exe du lanceur d'origine. Il doit être refait après la plupart des mises à jour du jeu, la liaison symbolique devrait également fonctionner et ne devra peut-être pas être refaite.

Je fais les commandes de chargement de mod dans les options de lancement, mais pas cette partie.

eh bien, je ne peux pas le trouver, mais quelques progrès.
J'ai défini les options de lancement sur juste
echo "%command%" > /tmp/cm

puis après cela, le fichier avait
wraymond @ shelob : ~ $ chat / tmp / cm
'/home/wraymond/.steam/compatibilitytools.d/Proton-5.6-GE-1'/proton waitforexitandrun' /home/wraymond/.steam/steam/steamapps/common/Mount & Blade II Bannerlord / bin / Win64_Shipping_Client / TaleWorlds .MountAndBlade.Launcher.exe »

de CLI
wraymond @ shelob : ~ $ PROTON_LOG = 1 '/home/wraymond/.steam/compatibilitytools.d/Proton-5.6-GE-1'/proton waitforexitandrun' /home/wraymond/.steam/steam/steamapps/common/Mount & Blade II Bannerlord / bin / Win64_Shipping_Client / Bannerlord.Native.exe '
Proton: Pas de chemin de données compatible?

donc j'ai pensé qu'il avait un ensemble d'environnement, cependant env/set/printenv > / tmp / steamenv - laisse le fichier vide, il n'a pas d'ensemble d'environnement. aucune idée d'où vient le répertoire de compatdata, quel mécanisme utilise Steam.

et bien sûr, parce que la vie est dure, définir cette chaîne dans les options de lancement ne fait rien
PROTON_LOG = 1 '/home/wraymond/.steam/compatibilitytools.d/Proton-5.6-GE-1'/proton waitforexitandrun' /home/wraymond/.steam/steam/steamapps/common/Mount & Blade II Bannerlord / bin / Win64_Shipping_Client / Bannerlord.Native.exe '
- aucun fichier journal créé
- rien ne se lance, meurt immédiatement

donc toujours coincé là-bas. J'essaierai de renommer / créer des liens symboliques, mais j'espérais un moyen de ne pas avoir besoin de refaire chaque patch

hah j'ai renommé l'exe du lanceur et copié l'exe natif sur ce chemin. le jeu a été lancé, mais maintenant encore aucune entrée de souris (avec proton-GE 5.5 ou 5.6).
Je vais essayer le changement de nom de managedstarter puisque cela a fonctionné dans le passé, mais cela passe par le lanceur, donc cela pourrait gâcher mes temps de sauvegarde ... ahhhhhhh
mise à jour qui n'aide pas non plus. aucune entrée de souris, je ne peux pas passer l'écran d'étalonnage. Je suis à perte.

Selon: https://github.com/ValveSoftware/Proton/issues/3706#issuecomment -612178492
echo %command% && exec /home/USERNAME/.steam/compatibilitytools.d/Proton-5.6-GE-2/proton waitforexitandrun "/PATH/TO/steam/steamapps/common/Mount & Blade II Bannerlord/bin/Win64_Shipping_Client/Bannerlord.exe"

Merci, je ne peux pas le faire commencer à pointer vers le lanceur ou le natif ou quoi que ce soit avec ça. y a-t-il un moyen de le faire sur CLI? le faire via l'interface utilisateur de vapeur cache juste tellement d'informations

De nombreux tests plus tard.
Je peux lancer le jeu avec la méthode originale de lien symbolique de ManagedStarter.
Lors du démarrage sur liquorix, je n'ai aucune entrée de souris (le curseur se déplace, mais ne peut rien cliquer). Testé sur proton-GE 5.5-1, 5.6-1 et 5.6-2.
Une fois démarré sur mon noyau normal (5.3, ubuntu), cela fonctionne bien, mais c'est le problème du temps de sauvegarde de quelques minutes.
La souris fonctionne normalement autrement dans le démarrage de liquorix, donc cela va être difficile à déboguer. Quelqu'un d'autre a-t-il un problème similaire?

@aradapilot Autant que je me souvienne, il y a des gens qui ont encore des problèmes de souris pour des raisons inconnues (je pense). Pour la plupart d'entre eux, cela semble parfois fonctionner, alors ils redémarrent jusqu'à ce que cela fonctionne. Pour certains, cela fonctionne plus souvent que pour d'autres. Mais je pense aussi qu'il y avait une personne pour qui la souris n'a jamais fonctionné, je ne me souviens pas si elle a été triée à la fin.

Mais je pense que tout cela était avant l'utilisation des noyaux fsync / custom et je ne pense pas que quiconque ait eu des problèmes de souris sur un tel noyau en particulier. Ce n'est donc peut-être pas tout à fait le même problème, même s'il est probablement lié d'une manière ou d'une autre.

Il est également possible qu'il y ait un correctif qui a glissé sous mon radar quelque part dans ce fil, la souris a bien fonctionné pour moi donc je n'ai pas suivi de très près ces discussions.

Ouais, la souris est la seule chose avec laquelle je n'ai jamais eu de problèmes dans le passé, elle a toujours fonctionné depuis le premier jour où je l'ai eue avec le proton de Yellowapple. donc, bizarre que cela frappe soudainement maintenant, et seulement sur un noyau spécifique, et ce n'est pas sporadique, certainement reproductible.

@aradapilot Reproductible, c'est bien! Quelque chose de remarquable se passe-t-il dans les journaux lors de l'utilisation du noyau liquorix?

J'ai choisi de conserver la stabilité de la configuration par défaut par Steam avec Proton 5.6-GE (sans installer dotnet ), et d'utiliser le mod Save Overhaul pour plante

@Aliervo ne sait pas trop comment les analyser. il a une de ces lignes:
189763.685: 0029: 0055: fixme: win : GetMouseMovePointsEx (24 0x315ef298 0x315ef2b0 64 1) semi-stub
journal complet (proton GE 5.6-2, noyau liquorix 5.5.0 sur ubuntu 19.10, bannerlord 1.3.0b [identique sur d'autres versions, mais le journal provient de cette version], solution de contournement de lien symbolique managedstarter [utilise le lanceur])
https://gist.github.com/aradapilot/96e4c046c1cef7bd7e3aca53b108e7c1

@aradapilot : Pouvez-vous ajouter +win à votre variable WINEDEBUG (soit via le user_settings.py dans le dossier Proton GE ou en ajoutant WINEDEBUG="+timestamp,+pid,+tid,+seh,+debugstr,+loaddll,+mscoree,+win" à vos options de lancement)? Curieux de savoir ce que GetMouseMovePointsEx voit et revient.

nouveau développement. si je ne saute
https://gist.github.com/aradapilot/27aee80b3eb88a5e7026457120791c08
https://gist.github.com/aradapilot/586137d7fc1742dd801a9b5fe3b25304
toujours bien sur le noyau 5.3 ubuntu, sauter n'a pas d'importance. donc soit quelque chose avec le déchargement du film, ou frapper la fuite, aucune idée.
De plus, avec le paramètre winedebug, j'obtiens maintenant une boucle infinie de popups "Async read operation failed 6" lors de la fermeture du jeu (via le menu avec une bonne souris ou alt-f4 sans souris, même résultat) - je dois tuer le processus de jeu pour l'arrêter.
Et pour couronner le tout, liqourix kernel 5.6 vient de sortir, donc j'ai une nouvelle chose à tester. Je le ferai un peu plus tard. Les tests ci-dessus étaient tous sur 5.5 pour éliminer l'ajout de nouvelles variables.

Hmm.

Ce qui est vraiment étrange, c'est que dans ces deux journaux, il y a exactement une trace complète de cette fonction. Borked:

237796.904:0029:0054:fixme:win:GetMouseMovePointsEx (24 0x30fcf298 0x30fcf2b0 64 1) semi-stub
237796.904:0029:0054:trace:win:GetMouseMovePointsEx     ptin: 835 868
237796.904:0029:0054:trace:win:GetMouseMovePointsEx     ptout[0]: 835 868
237796.904:0029:0054:trace:win:GetMouseMovePointsEx     ptout[1]: 0 0

D'ACCORD:

237537.240:0029:0054:fixme:win:GetMouseMovePointsEx (24 0x30fcf298 0x30fcf2b0 64 1) semi-stub
237537.240:0029:0054:trace:win:GetMouseMovePointsEx     ptin: 918 642
237537.240:0029:0054:trace:win:GetMouseMovePointsEx     ptout[0]: 918 642
237537.240:0029:0054:trace:win:GetMouseMovePointsEx     ptout[1]: 0 0

Avec +win cette fonction devrait afficher ces traces à chaque fois que la souris bouge. Étant donné que ce n'est pas le cas, il semble que le jeu ne reçoive pas du tout l'entrée de la souris (v. Le bogue de mise en scène patché dans Wine où le jeu recevrait une entrée de la souris mais ne savait pas comment déplacer le curseur). Pourtant, cela semble également être le cas pour l'exemple de travail, indiquant qu'il est en quelque sorte capable de fonctionner sans appeler GetMouseMovePointsEx plus d'une fois.

Pour être clair, vous n'avez pas de paramètres bizarres mappés par joystick comme souris ou vice versa, non?

non, configuration régulière de la souris et du clavier. le curseur se déplace correctement dans les deux scénarios, il suffit de cliquer sur l'entrée qui manque dans l'un.
et mon test du noyau 5.6 est suspendu en ce moment car cela ne reconnaît pas ma carte sans fil (basée sur Broadcom), quelque chose avec la compatibilité bcmwl, prendra du travail

@YellowApple n'a pas de journal sur moi (au travail), mais mon ami sur Manjaro KDE a remarqué un changement significatif dans le temps de lecture de la souris en désactivant la gestion du contrôleur de Steam.

@rgreenblatt
Pour tout le monde, le multijoueur a-t-il fonctionné pour quelqu'un d'autre? Je n'ai pas pu me connecter depuis près d'une semaine. J'arrive à la page de connexion, et j'obtiens le cercle de malheur pendant quelques minutes avant qu'il ne me dise qu'il ne peut pas se connecter. Ceci sur les branches Beta et Stable.

J'ai été sur 5.5 GE pour le correctif de la souris pour le mode solo mais je n'ai malheureusement jamais pu me connecter en multijoueur. Cela échoue à chaque fois avec une erreur générique «Échec de la connexion»

donc mon problème devient un peu plus étrange (avec 5,5 liquorix)!
la souris fonctionne, juste avec un délai d'environ 30 secondes. difficile à expliquer ...
si je déplace la souris sur le point A, rien ne se passe. impossible de cliquer sur A, pas de surbrillance au survol de la souris. ça restera comme ça pour toujours.
si j'attends ~ 30 secondes sans aucune entrée et que je passe la souris sur A, rien ne s'est passé. mais après avoir attendu, si je déplace la souris sur le point B, le jeu pense alors que le curseur est maintenant sur A. A mettra en évidence, et je peux cliquer dessus, même avec mon curseur ailleurs sur l'écran, en B. Le jeu avec pense le le curseur est là jusqu'à ce que j'arrête la saisie pendant encore 30 secondes, puis passe à C, après quoi il pensera qu'il était à B.
C'est pourquoi j'ai obtenu une fonction sans sauter l'intro, car cela s'est avéré être 30 secondes sans entrée. cela n'a rien à voir avec l'intro, je peux reproduire ce comportement dans tous les menus.
donc quelque chose met à jour la nouvelle position du curseur en tant qu'ancienne position de la souris réelle, et pour une raison quelconque, il faut environ 30 s de temps d'inactivité pour même vérifier?

un journal récent
https://gist.github.com/aradapilot/15aceaeb18fbdc8ef1304c1211a1c389

Dans les notes de version 5.0-7 RC, il y a cette note: "Correction des plantages dans Mount & Blade 2: Bannerlord"
Mais le jeu ne démarre toujours pas pour moi avec proton 5.0.7. Ai-je raté quelque chose? Merci!

Dans les notes de version 5.0-7 RC, il y a cette note: "Correction des plantages dans Mount & Blade 2: Bannerlord"
Mais le jeu ne démarre toujours pas pour moi avec proton 5.0.7. Ai-je raté quelque chose? Merci!

Si vous regardez les notes de version 5.0-7, ce correctif n'est pas là, peut-être a-t-il été levé à la dernière minute?

Existe-t-il une différence entre Bannerlord.exe et Bannerlord.Native.exe? (excuses si cela se trouve quelque part dans le fil de discussion ci-dessus, je n'ai pas trouvé de moyen de rechercher sur les commentaires github)

Bannerlord.Native.exe utilise la version Win64 de Mono. L'exécutable régulier utilise .NET Framework.

Bannerlord.Native.exe utilise la version Win64 de Mono. L'exécutable régulier utilise .NET Framework.

Voilà des informations intéressantes. J'ai trouvé que pour une raison quelconque, l'utilisation de l'exe natif conduit à environ la moitié des temps de sauvegarde avec l'utilisation de l'exe normal, du moins lors de l'utilisation de fsync car je n'ai pas testé sans, et je pense que quelqu'un d'autre a eu des résultats similaires sans fsync.

Mais je n'ai jamais compris ce qui était différent, sauf que le Native a contourné le lanceur, et je ne savais pas si c'était ce qui l'avait affecté, ni pourquoi.

Comme l'installation de dotnet a un impact important sur les temps de sauvegarde, il semble probable que ce soit la différence mono / .NET qui soit la raison réelle de la différence de temps de sauvegarde avec les exe natif et régulier.

@mustafakorkmaz pouvez-vous faire quelque chose pour aider à la stabilité de la version Proton? Ou le développement est-il encore trop chargé en ce moment?
Je suis impatient d'obtenir ce jeu mais j'espère aussi un port Linux, ou du moins un équivalent Proton solide comme le roc.

@pierrep J'ai 0 crash en utilisant uniquement fsync et Proton-GE, et rien d'autre, le jeu est vraiment stable et les temps de sauvegarde sont de 10 secondes dans le pire des cas.

En utilisant linux-zen (qui inclut f-sync ) et Proton-5.6-GE-2, j'ai environ 30 sauvegardes, et les performances du jeu ralentissent avec le temps, ce qui me oblige à redémarrer le jeu après un certain temps (souvent quelques heures, parfois moins d'une heure) pour qu'il fonctionne à nouveau correctement.

Mais je reçois moins de plantages que mon frère, qui joue sous Windows. Je ne sais pas si c'est à cause des mods qu'il utilise, ou parce que l'exécutable .NET est simplement beaucoup plus accidenté.

@mustafakorkmaz pouvez-vous faire quelque chose pour aider à la stabilité de la version Proton? Ou le développement est-il encore trop chargé en ce moment?
Je suis impatient d'obtenir ce jeu mais j'espère aussi un port Linux, ou du moins un équivalent Proton solide comme le roc.

Je vérifie ce fil de temps en temps, mais je ne peux pas travailler activement sur la compatibilité Proton. C'est quelque chose sur lequel je veux me concentrer lors de l'accès anticipé. On dirait qu'il n'y a plus de problèmes D3D11 comme nous en avions sur la version bêta, donc c'est une bonne nouvelle :)

Je reçois des blocages / se fige en moins d'une heure de jeu, à un point tel que, lorsque je ne fais pas immédiatement alt-f4, mon système se verrouille complètement. Je suppose que les erreurs Xid (nvidia) que je reçois sont à blâmer. Le passage à la console virtuelle ne fonctionne pas, ce qui est, je pense, à cause de la panne du GPU (?) Ou quelque chose à cause des erreurs Xid.
journalctl -o short-precise -k -b -1 pour les messages du noyau précédents.
J'ai testé cela sur deux machines nvidia linux mint, une avec le noyau fsync à partir d' ici
et un avec un noyau linux standard (proton avec dotnet et co). Les deux utilisent Proton-5.6-GE-2.
Une seule machine obtient une erreur Xid 68 (exception du processeur vidéo)
NVRM: Xid (PCI:0000:01:00): 68, pid=1301, CCMDs 0000004f 0000c2b0

Mais les deux obtiennent une erreur Xid 31 (erreur de page de mémoire GPU) sur les deux machines.
NVRM: Xid (PCI:0000:01:00): 31, pid=17919, Ch 0000004e, intr 10000000. MMU Fault: ENGINE GRAPHICS GPCCLIENT_RAST faulted @ 0x0_00000000. Fault is of type FAULT_PDE ACCESS_TYPE_WRITE
Quelqu'un d'autre a ces erreurs ou a-t-il une solution?

EDIT: J'ai utilisé le noyau fsync avec l'autre pc maintenant, et cela fonctionne très bien. Également mis à jour le pilote de 435.21 à 440.59. Je ne sais pas qui a fait l'affaire.

On dirait qu'ils ont activé BattlEye avec le patch 1.3, j'ai été frappé par l'anti triche.
Screenshot from 2020-05-07 17-40-07

@pierrep J'ai 0 crash en utilisant uniquement fsync et Proton-GE, et rien d'autre, le jeu est vraiment stable et les temps de sauvegarde sont de 10 secondes dans le pire des cas.

J'ai lu des histoires de réussite, mais tout le monde n'a pas la même chance. Je ne suis pas disposé à parier pour un jeu à plein prix à ce stade.

On dirait qu'ils ont activé BattlEye avec le patch 1.3, j'ai été frappé par l'anti triche.

Il semble donc: (À partir des notes de mise à jour 1.3 :

  • Les jeux personnalisés officiels nécessitent désormais un anti-triche.

Je ne sais pas si cela inclut également les serveurs de jeu rapide, mais probablement. Existe-t-il même un moyen de jouer sur des serveurs non officiels?

Cela me rend très triste parce que j'ai beaucoup aimé le multijoueur ces derniers temps.

Mettre à jour:
J'ai juste essayé le jeu rapide et j'ai pu rejoindre mais j'ai été expulsé après quelques secondes.

Alors oui, je ne trouve aucun moyen de créer ou de trouver des serveurs non officiels. Cela signifie effectivement que le multijoueur est complètement cassé pour nous.

J'ai essayé quelques solutions de contournement:

  1. Proton GE 5.5+ avec protontricks 261550 dotnet472 et noyau Linux par défaut (ArchLinux)
  2. Proton GE 5.5+ avec protontricks 261550 dotnet48 et noyau Linux par défaut (ArchLinux)
  3. Proton GE 5.5+ sans protontricks 261550 dotnet et linux-fsync (ArchLinux)
  4. Proton GE 5.5+ sans aucun protontricks 261550 dotnet et linux-xanmod (ArchLinux)

Presque la même stabilité (le jeu se bloque sur la carte mondiale, le jeu se bloque sur le champ de bataille).
Meilleures performances avec protontricks 261550 dotnet472 ou protontricks 261550 dotnet48
Jeu presque injouable dans le bon sens (il faut faire des quicksaves toutes les quelques minutes pour recharger après chaque fois que le jeu veut se bloquer un peu). Vous devez également tuer le processus manuellement (avec le gestionnaire de processus), car ni la vapeur ni l'environnement ne peuvent fermer le processus.

Pour la stabilité, la recommandation pour le moment est d'éviter complètement .NET via des liens symboliques exexuables: https://github.com/ValveSoftware/Proton/issues/3706#issuecomment -611595369

Éviter .NET rend les temps de sauvegarde beaucoup plus longs, c'est pourquoi il est recommandé de le combiner avec un noyau compatible fsync.

Depuis le patch Bannerlord v1.4.2, j'avais des problèmes pour sauvegarder le jeu. Il était juste montrer la boîte de dialogue « ne peut pas créer de sauvegarde des données » dans le jeu et montrait l'erreur suivante dans le GAMELOGS [0]MonoPosixHelper assembly:<unknown assembly> type:<unknown type> member:(null)

Si vous rencontrez cette erreur particulière, vous pouvez la corriger en procédant comme suit:

  1. Téléchargez la version Windows de Mono x64
  2. Installez-le sur n'importe quel préfixe wine (nous avons juste besoin d'un fichier, vous pouvez supprimer le préfixe par la suite)
  3. Copiez <wine_pfx>/drive_c/Program Files/Mono/bin/MonoPosixHelper.dll dans <your_steam_library>/steamapps/common/Mount & Blade II Bannerlord/bin/Win64_ShippingClient/

Bonne nouvelle: une version plus robuste du correctif du curseur de la souris est maintenant en amont dans une version actuelle de Wine (en particulier, Wine 5.20 ). Donc, dès que Proton le prendra, nous ne devrions, espérons-le, plus avoir besoin de Proton-GE pour une souris qui fonctionne.

La v1.5.4 est donc une grosse mise à jour, et elle a cassé le lanceur pour moi. Je n'ai aucun problème avec la v1.5.3 - elle fonctionnait assez bien, plantait rarement. Sous la version 1.5.4, je reçois brièvement un lanceur noirci, puis un crash.

>>> Adding process 19718 for game ID 261550
Unhandled exception: page fault on read access to 0x7a23df50 in 64-bit code (0x00000001802b2e3d).

J'ai dû recourir à la liaison symbolique du lanceur à Bannerlord.Native.exe pour surmonter le problème de lancement, et passer à Proton-5.9-GE-8-ST de 5.11-GE-3-MF pour entrer dans le jeu - tous les autres protons que j'ai essayé (5.13-1, 5.11, 5.5, 5.0.9) bloqué au premier écran de chargement, avant les animations. Il est de retour pour moi. Pas besoin de protontricks (pas que tout ce que j'ai essayé a aidé avec le lanceur), et l'utilisation du noyau zen a atténué un problème de détection de clic de souris ennuyeux (les clics de la première exécution ne sont plus non détectés).

Au-dessus de ^ fix, la version 1.5.4 fonctionnait pour moi. Je reçois toujours des plantages normaux, mais maintenant:

Je reçois de nouveaux gels (pas de message d'erreur) pendant le combat, toujours sur un impact d'arme, et assez souvent. La seule réponse est de sortir et de redémarrer le jeu. Les journaux indiquent une tonne de "Le train de bits transcodé n'était pas valide, cela peut indiquer un fichier corupté ou une version de transcodeur incompatible." puis finit soudainement.

J'obtiens également quelques brefs gels lorsque je clique sur un endroit où aller, après avoir quitté une colonie. Quelques secondes, mais très souvent. Ils n'affectent pas vraiment le jeu, juste ennuyeux.

Utilisation du noyau xanmod 5.8 qui rend l'économie tolérable, pas de protontricks, proton 5.9-GE-8

Juste au cas où cela pourrait être utile à quiconque a du mal à démarrer le lanceur, j'ai compris que vous pouviez charger des mods sans cela grâce à ce paramètre de lancement (fonctionne également directement sur Bannerlord.Native.exe):
/singleplayer _MODULES_*Native*SandBoxCore*CustomBattle*Sandbox*StoryMode*_MODULES_

Vous devez simplement ajouter vos mods entre * * fonction de la commande de mods dont vous avez besoin. Ce sera le nom de leurs dossiers respectifs dans Modules/ . Cette commande chargera les mods dans l'ordre. Ces 5 modules sont fournis par défaut avec le jeu et sont nécessaires à l'initialisation du jeu.
N'oubliez pas de démarrer et de fermer la liste des modules par un astérisque.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

ghost picture ghost  ·  3Commentaires

kforney picture kforney  ·  3Commentaires

raikirii picture raikirii  ·  3Commentaires

leifmetcalf picture leifmetcalf  ·  3Commentaires

lumni1968 picture lumni1968  ·  3Commentaires