Problème de contrôle (manette ps3) avec ScummVm
-
Bonjour @Laurent merci pour ton partage. As tu essayé de mapper cette touche F7 pour voir si le clavier virtuel apparaissait ?
-
Oui, mais ça ne fonctionne pas ! Apparemment, l'option n'est pas activée par défaut. Je vais essayer de recompiler scummvm avec cette option. On verra bien si cela change quelque chose ...
-
Hello, pour info, le non support des manettes dans scummvm sera résolu dans la 4.0 de recalbox. Cette dernière contiendra une version patché de SDL qui permettra de faire fonctionner out of the box tous les contrôleurs sur scummvm.
-
Ha chouette. C'est bon à savoir. Y aura-t-il aussi le clavier virtuel dans scummvm ?
-
Humm je jetterai un coup d'oeil, peu être une option à ajouter à la compilation.
-
Voilà, finalement, j'ai recompilé scummvm (vanfanel) avec l'option --enable-vkeybd au moment du configure et remplacé la version /usr/bin/scummvm par celle que j'obtiens. Pour que cela fonctionne, il faut encore : - mapper un bouton du pad vers CTRL-F7 - récupérer les fichiers de définition du clavier (vkeybd_default.zip et vkeybd_small.zip) et les placer quelque part (chez moi, c'est dans /usr/share/scummvm/) puis associer le répertoire dans la configuration : ----- .scummvmrc ----- [scummvm] vkeybdpath=/usr/share/scummvm ------------ Par contre, je trouve les menus ScummVM fort petits. Les jeux s'ouvrent chez moi en 1920x1080 (x3) mais je suspecte que les menus gardent leurs tailles d'origine, ce qui les rend illisibles de loin. Quelqu'un aurait une idée ? J'ai tenté de changer la résolution en remplaçant le mode vidéo de 2 vers 3 au lancement de runcommand.sh. Le jeu se lance alors en 640x480 mais ScummVM semble continuer à utiliser la résolution 1920x1080 ... donc, je ne visualise qu'une partie de l'écran !
-
Sinon, j'en profite aussi pour poster une autre astuce: Chez moi, j'ai modifié la structure des "ROMs" ScummVM. Ma nouvelle structure est : -> Répertoire du jeu avec l'extension .scummvm (ex: Day of the Tentacle.scummvm) --> qui contient tous les fichiers du jeu + tentacle.scummvm (le nom court attendu par ScummVM) En gros, je ne fais que renommer le répertoire en y ajoutant une extension .scummvm Ceci empêche ES de rentrer dans le répertoire et il exécute directement le jeu. J'ai du adapter un peu le script /recalbox/scripts/emulatorlauncher.sh comme suit : ------ if [[ "$emulator" == "scummvm" ]]; then scummFile=$(ls "$1"/.scummvm) scummFilename=$(basename "$scummFile") scummId=${scummFilename%.} /recalbox/scripts/runcommand.sh 2 "scummvm --path="$1" "$scummId"" fi ------ Les avantages de cette technique sont : 1) Plus besoin de rentrer dans le répertoire pour l'exécution du jeu (je trouve l'interface plus propre) 2) Le scrapping se base sur le nom de répertoire plutôt que le nom court ScummVM, ce qui donne de bien meilleurs résultats Si cela peut intéresser quelqu'un ...
-
Nice, merci pour ces feedbacks. Je regarderai tout ça quand je mettrai scummvm à jour dans la 4.0.0
-
Alors je viens de jeter un coup d'oeil à scummvm ok pour le clavier virtuel. Par contre une idée de comment je peux assignée un bouton de la manette au clavier virtuel. Car dans l'état je suis obligé de passer par le clavier, ctrl+f7 pour faire apparaître le clavier virtuel
-
Ok j'ai trouvé, https://github.com/vanfanel/scummvm/blob/master/backends/events/sdl/sdl-events.cpp#L44 Plus qu'à patcher les sources.
-
Salut rockaddicted, Pour le moment, j'utilise xboxdrv pour mapper mes boutons pad vers des événements clavier/souris. Mon script complet est : ------ if [[ "$emulator" == "scummvm" ]]; then scummFile=$(ls "$1"/.scummvm) scummFilename=$(basename "$scummFile") scummId=${scummFilename%.} xboxdrv --config /usr/share/scummvm/xboxdrv-scummvm.ini & xboxdrv_pid=$! /recalbox/scripts/runcommand.sh 2 "scummvm --path="$1" "$scummId"" kill $xboxdrv_pid fi ------ Et le fichier xboxdrv-scummvm.ini : ------- [xboxdrv] ui-clear=true evdev=/dev/input/event0 silent=true extra-events=false [evdev-absmap] ABS_X=x1 ABS_Y=y1 [ui-axismap] x1=REL_X:10 # Left analogic stick = mouse movement y1=REL_Y:-10 [evdev-keymap] BTN_A=a BTN_B=b BTN_X=x BTN_Y=y BTN_START=start BTN_SELECT=back [ui-buttonmap] a=BTN_LEFT # A button = mouse left button (select) b=BTN_RIGHT # B button = mouse right button (default action) x=KEY_SPACE # X button = keyboard SPACE (pause) y=KEY_ESC # Y button = keyboard ESC (skip sequence) back=KEY_LEFTCTRL+KEY_F7 # SELECT/BACK button = CTRL-F7 (open virtual keyboard) start=KEY_F5 # START button = F5 (open ScummVM menu) ---------
-
Tu en profites pour passer en SDL 2 pour corriger le problème de joystick alors ?
-
Yep à la base je comptais passer sur une version patchée de SDL1 pour résoudre le soucis de joystick. Mais finalement vu que le scummvm officiel vient de switcher sur SDL2, je pars la dessus. Pour le clavier virtuel, j'ai patché les sources, pour qu'une pression du bouton 7 de la manette affiche/retire ce dernier de l'écran. Par contre les contrôles étant hardcoded, on ne pourra pas faire de modif de la configuration de la manette.
-
OK, c'est déjà super. Merci !
-
Rockaddicted, Je viens de penser à une chose. Dans le fichier de configuration de Scummvm (/root/.scummvmrc), ne serait-il pas intéressant de mettre par défaut : savepath=/recalbox/share/saves Ainsi les sauvegardes ScummVM seront à l'emplacement standard.