Planet Emulation Forums

Planet Emulation Forums (https://forums.planetemu.net/index.php)
-   Hardware et Software (https://forums.planetemu.net/forumdisplay.php?f=24)
-   -   Génération de fichier pendant l'émulation (https://forums.planetemu.net/showthread.php?t=16050)

RatedJosh 05/04/2021 12h52

Génération de fichier pendant l'émulation
 
Bonjour,

Ne sachant pas vraiment où poster ma question, ni trop comment appeler le sujet, n'hésitez pas à me dire si je fais erreur, étant nouveau. :innoc:

Enchanté, du coup. ^_^
(question en fin de post)

Lorsque j'ai un peu de temps, je m'amuse sur Blender, un logiciel qui fait beaucoup de choses (mais qui officiellement est abandonné mais c'est encore un autre sujet) et qui donc, entre autres, a un petit moteur de jeu vidéo.

J'ai tenté pas mal de petits jeux durant des années, mais de manière décousue et relativement autodidacte, en 3d mais aussi en 2d et ai acquis donc un peu d'expérience dans un domaine qui m'était complétement inconnu avant.

Grace à cet outil, je me suis mis en tête de créer un genre de "frontend" 3d, qui prendrait l'apparence d'un rayon de jeux vidéo des années 90 dans lequel on pourrait y choisir sa boite, la regarder en la tournant, l'ouvrir, sortir la courtouche, jusqu'à l'insérer dans la console.

https://i.goopics.net/800/OAo0Q.jpg
Vue générale du rayon
https://i.goopics.net/800/xQXL4.jpg
on ouvre la boite de Zelda Snes!
https://i.goopics.net/800/A2gnb.jpg
il faut littéralement enfoncer la cartouche et allumer la console pour lancer le jeu.

https://i.goopics.net/800/lvqOJ.jpg
Dernière étape, pousser le bouton!


En allumant la console d'exposition, ça lance l'émulateur ZSnes avec le jeu inséré dans la console virtuelle (grace à un petit programme python) et ferme blender.

Tout ceci marche très bien! Mais j'ai décidé de tout refondre, certaines choses méritant d'être améliorées.

Mais bref, voici ma question:

Connaissez vous un émulateur, ou un logiciel addictionnel à ça, un procédé, qui permettrait de générer un fichier lorsqu'admettons, on fini un stage dans mario en jouant sur émuateur?

Cela serait un bon moyen de mettre en place un système de trophées, d'achievements personnalisé :-)
En effet, le script de blender est capable de savoir si dans tel dossier, un tel fichier est présent ou pas, ce qui serait un moyen sympa d'avoir des infos sur les avancées qu'on a dans tel ou tel jeu, lorsqu'on est dans le rayon virtuel. (pas en plein jeu) c'est par ce procédé que je peux afficher une petite icône de disquette dans le rayon qui signifie qu'on a une save sur ce jeu.

https://i.goopics.net/800/25Oxe.jpg

Merci d'avance pour vos éventuelles réponses, en espérant n'avoir pas été trop fouillis dans mes explications. :blush:

Bonnes fêtes de Pâques à tous!

Shino 05/04/2021 13h15

Salut !
Et félicitations, il a l'air vraiment très sympa ton projet !

Sinon pour les fichiers, je ne crois pas qu'il y ait d'émulateur capable de te faire des fichiers selon l'avancée dans les jeux. Par contre, tous enregistrent la mémoire interne des cartouches ainsi que les save states dans des fichiers séparés : ces fichiers là, tu pourrais les détecter pour afficher une icône s'il y a une save state et une autre s'il y a une sauvegarde interne.

Firebrand 05/04/2021 14h34

C'est franchement un projet sympa!

De l'émulation avec un système de trophées? Ca existe: https://retroachievements.org/
Par contre, ça utilise des émulateurs modifiés. Pour la SNES, leur version de RASnes9x est basée sur Snes9x v1.6.0 qui est un bon émulateur. Et ça ne sera pas plus mal que tu en changes, parce que ceci...

Citation:

Envoyé par RatedJosh (Message 284784)
ça lance l'émulateur ZSnes

Ca c'est non. :angry: Ca casse tout le truc pour moi. ZSNES est un émulateur totalement obsolète. C'était une référence, mais il y a 20 ans. Il n'est plus mis à jour depuis 2005 et de l'eau a coulé sous les ponts.

Le meilleur émulateur SNES est higan, mais il est compliqué... bien qu'il corresponde assez à ton idée vu qu'il faut "insérer la cartouche" puis "appuyer sur le bouton". Faut lire la documentation et le wiki associé, c'est essentiel pour le comprendre.

Ensuite viennent bsnes ou ares. Quelques compromis sur la précision de l'émulation par rapport à higan (même auteur), mais nettement plus simples d'utilisation.

Enfin Snes9x, moins mis à jour que les autres mais qui reste simple d'utilisation et de bonne qualité.

Pour la détection de sauvegarde, comme le dit shino. Tu devrais pouvoir détecter la présence du fichier de la pile pour les jeux qui en possèdent ou les fichiers des save states.

Bon courage, je te souhaite d'aboutir ton projet! :-)

RatedJosh 05/04/2021 20h35

Salut et merci beaucoup pour vos retours :-)

Citation:

Salut !
Et félicitations, il a l'air vraiment très sympa ton projet !

Sinon pour les fichiers, je ne crois pas qu'il y ait d'émulateur capable de te faire des fichiers selon l'avancée dans les jeux. Par contre, tous enregistrent la mémoire interne des cartouches ainsi que les save states dans des fichiers séparés : ces fichiers là, tu pourrais les détecter pour afficher une icône s'il y a une save state et une autre s'il y a une sauvegarde interne.
Merci Shino!
En effet, pour les sauvegardes je savais, le système est déjà en place. Pas encore pour les savestates, je n'y avais pas pensé, merci ^_^

Citation:

C'est franchement un projet sympa!

De l'émulation avec un système de trophées? Ca existe: https://retroachievements.org/
Par contre, ça utilise des émulateurs modifiés. Pour la SNES, leur version de RASnes9x est basée sur Snes9x v1.6.0 qui est un bon émulateur. Et ça ne sera pas plus mal que tu en changes, parce que ceci...

Citation:
Envoyé par RatedJosh Voir le message
ça lance l'émulateur ZSnes
Ca c'est non. Ca casse tout le truc pour moi. ZSNES est un émulateur totalement obsolète. C'était une référence, mais il y a 20 ans. Il n'est plus mis à jour depuis 2005 et de l'eau a coulé sous les ponts.

Le meilleur émulateur SNES est higan, mais il est compliqué... bien qu'il corresponde assez à ton idée vu qu'il faut "insérer la cartouche" puis "appuyer sur le bouton". Faut lire la documentation et le wiki associé, c'est essentiel pour le comprendre.

Ensuite viennent bsnes ou ares. Quelques compromis sur la précision de l'émulation par rapport à higan (même auteur), mais nettement plus simples d'utilisation.

Enfin Snes9x, moins mis à jour que les autres mais qui reste simple d'utilisation et de bonne qualité.

Pour la détection de sauvegarde, comme le dit shino. Tu devrais pouvoir détecter la présence du fichier de la pile pour les jeux qui en possèdent ou les fichiers des save states.

Bon courage, je te souhaite d'aboutir ton projet!
Merci Firebrand ^_^

Effectivement, en faisant des recherches google "trophées ou achievement + émulation" on tombe sur retroachievement dans 80% des liens ;D
Après, j'ai hésité et me suis demandé sur quel forum j'allais pouvoir m'inscrire pour ma requête. Je ne sais pas si sur PlanetEmu, on parle un peu de hack (un domaine qui m'est inconnu) j'imagine que ce genre de requête fait appel au hack, au décorticaqe d'une rom.
Merci pour ces infos d'émulateurs plus ou moins obsolètes, je vais me pencher sur la question :D

Je ne savais pas que Zsnes était 'mal vu' de nos jours, c'est celui qui m'a accompagné depuis le début vu qu'il avait de super perf à l'époque avec mon vieux PC ^_^ Snes9x j'en ai pas gardé une super expérience :nerd::P
Après ce n'est pas un soucis de changer d'émulateur, on peut lancer n'importe quel ému depuis blender (d'ailleurs les étapes suivantes consisteront à faire des rayons Master System, Megadrive...etc ) il suffit de changer quelques ligne de code ^_^
Je suis habitué d'être à la traine au niveau logiciel/materiel...parlez de Blender à des gens qui font des "jeux" ils vous riront presque au nez et diront que c'est dépassé (ça l'a limite toujours été :cry: ;D ) y a Unity, Godot...


Bref, pour résumer, il est impossible de créer des fichiers selon l'avancée dans la rom, à moins de modifier soi même ou créer son émulateur comme les gars de retroachievements ?
Avant de poser trop de questions, je vais faire un tour là bas, et voir un peu les émulateurs que tu m'as conseillé.

Merci infiniment d'avoir pris de temps de répondre et pour vos encouragements ^_^ :thumbup:

Shino 05/04/2021 21h26

T'inquiète, il est pas si mal vu ce pauvre Zsnes :)
L'arrivée de Higan l'a rendu un peu ringard disons pour certains passionnés mais objectivement, si Zsnes est effectivement un peu poussiéreux, il a aussi de sérieux avantages à faire valoir (qualité d'émulation déjà excellente, compatibilité à peu près impossible à prendre en défaut, philosophie tout-en-un très confortable, interface entièrement pilotable avec le gamepad... Bref t'inquiète, y a vraiment pas matière à changer tes habitudes si tu y tiens à ton Zsnes ^^)

Firebrand 06/04/2021 03h48

Y'a aussi plein de bugs et de trucs mal émulés. Désolé shino, mais il n'y a aucune bonne raison de le garder de nos jours vu qu'on peut trouver des programmes aussi simples d'accès et plus qualitatifs... même sans être aussi exigeant que Near/byuu.

Citation:

Envoyé par RatedJosh (Message 284791)
Bref, pour résumer, il est impossible de créer des fichiers selon l'avancée dans la rom, à moins de modifier soi même ou créer son émulateur comme les gars de retroachievements ?

Je l'ignore: je sais que ça existe avec RetroAchievements mais pas comment ça marche. Il faut probablement décortiquer les sources, si tu sais programmer: https://github.com/RetroAchievements

chaz 08/04/2021 16h11

Zsnes n'est pas "mal vu", mais il est bien bien vieux et bien obsolète. Ca serait un peu comme choisir Neorage X pour la Neo-Geo ou Magic Engine pour les consoles de Nec :blush:

Shino 08/04/2021 19h15

Je persiste et signe : UltraHLE, Bleem etc, je suis d'accord qu'il y a beaucoup d'émulateurs superstars à leur époque et complètement oubliés pour de bonnes raisons.

MAIS, j'utilisais encore Zsnes WIP il y a seulement quelques mois, et attention, malgré mon avatar d'escroc, je rappelle que mon système préféré de très très loin est la Super Nintendo, alors je l'utilisais et beaucoup ! et malgré cela, il ne m'a presque jamais posé de problèmes d'émulations sur les milliers d'heures que j'ai passées dessus... (de tête, je citerai bien Jungle Strike et ses sprites qui sautent avec le scrolling ou Marvel Super Heroes qui flashait en noir)

Bref, même après avoir testé ses remplaçants au fur et à mesure (à commencer par Snes9x puis Bsnes/Higan évidemment), aucun n'apporte de raison suffisamment solide pour quiconque souhaiterait rester sur Zsnes.
Entendons-nous bien : commençer l'émulation avec Zsnes n'aurait pas beaucoup de sens. Mais prendre le temps de changer ses habitudes pour d'autres émulateurs qui n'apportent finalement pas autant que ce qu'on en dit n'est pas si urgent...



PS : par contre, si j'ai arrêté Zsnes, c'est à cause de Retroarch qui a finalement réussi là où les autres avaient échoué ^^
(et pourtant niveau bugs, il est quand même bien fourni le bougre)

Dinofly 08/04/2021 20h29

Les achievements sont également supportés par Retroarch, mais je ne sais pas si ça concerne tous les cores: https://www.retroarch.com/?page=achievements

Il y aurait peut être moyen (même si c'est tiré par les cheveux) de te brancher sur le site Retroachievements avec un truc du genre IFTT pour recevoir un callback quand un trophée est débloqué ? Sinon tente de regarder comment c'est géré dans le code de Retroarch.

Marskilla 13/04/2021 11h52

Citation:

Envoyé par Shino (Message 284811)
(...)(de tête, je citerai bien Jungle Strike et ses sprites qui sautent avec le scrolling ou Marvel Super Heroes qui flashait en noir)(...)

Un peu comme Shino, j'utilise les vétérans. Enfin, plus snes9x que zsnes, mais je les utilise.

Quand ca merdouille, et ça arrive :

https://i.imgur.com/iiWt1kv.png
Super SWIV, un de mes SHMUPS favoris, merdouille sur l'écran titre, ça le fait juste pas

...je passe alors sur bsnes/higan qui sont chiants comme la pluie, très lourds et qui n'ont pas les options d'affichage que je veux, mais qui émulent bien.

https://i.imgur.com/SJuJecS.png?1

Ca, c'est mon usage (et p'tet celui de Shino, big up l'ami)

Maintenant, on fait un frontend 3D de la mort qui tue en 2021 ? Bah faut prendre la meilleure qualité d'émulation pour tous les jeux. C'est pas plus compliqué que ça.

Et un frontend c'est fait pour gérer les options d'émulation a votre place, non ? Si on affiche de la 3d gourmande, on peut bien faire tourner un higan, non ?


Le forum de support de snes9x
affiche un electro-encéphalogramme plat sur tellement de sujets :

https://i.imgur.com/kKla4OT.png

Des vues, y'en a ! Mais des prises en comptes, des corrections, des évolutions et des réponses... c'est autre chose. Je pense qu'on ne peut plus en attendre grand chose d'autre que ce qu'il propose.

Quant à Zsnes... bah...

En ce qui concerne la "génération de fichiers" je vois deux options :
* prendre un (bon) émulateur open-source et implémenter l'écriture de fichiers selon la progression dans les jeux : bon courage va falloir afficher des talents de dev sur des technos actuelles et d'époque.
ou
* Laisser faire retroarch / aller chercher les achievements plubliés.
Ainsi ai-je parlé.

https://i.imgur.com/7JSTFN4.png


Fuseau horaire GMT +2. Il est actuellement 05h08.

vBulletin® v.3.8.7, Copyright ©2000-2021, Jelsoft Enterprises Ltd.