Possible de récupérer les scores des différents jeux ?

Pour parler librement d'émulation arcade et consoles.
Message
Auteur
jimbo
stick de plastique
Messages : 8
Inscription : 24 juil. 2009, 10:43

Possible de récupérer les scores des différents jeux ?

#1 Message par jimbo »

Bonjour,
je suis en train de mettre une place un borne arcade avec essentiellement des jeux MAME et quelques jeux Taito Type X et je voudrais savoir si quelqu'un s'est déjà pencher sur la question de pouvoir récupérer et enregistrer les scores fait sur les jeux sur une base externe ?

En fait, je me base sur le modèle des cartes Street fighter 4 au japon qui permettent d'avoir un classement du joueurs au niveau national. J'aimerai pouvoir faire la même chose mais sur les jeux MAME ou autres qui tourneront sur ma borne Arcade, projet de dingue mais si c'est possible ce serait complètement "stylé" lol.

Personnellement je doute que cela soit possible, sauf si MAME est capable d'écouter ce qui se passe sur le jeu qu'il est en train d'émuler.
Sinon faut faire une sorte de logiciel de reconnaissance visuel afin de récupérer les score, mais ca parrait très très compliqué à faire, sans parlé des impacts sur les performances.

Merci

Avatar de l’utilisateur
stickcross
stick de platine
Messages : 2591
Inscription : 25 juin 2008, 15:09
Localisation : Toulouse

Re: Possible de récupérer les scores des différents jeux ?

#2 Message par stickcross »

J'ai déja pensé à ça et j'en avait parlé il y a pas trés longtemps pour le topic de ranking shmup.


C'est faisable en exploitant les fichier Highscore créer par MAME dans le dossier hi.

Il faudrait créer un client installer sur le PC qui prenne ce fichier et extrait les infos dedans pour le balancer à un serveur qui fais le classement.


Le problème c'est que chaque jeux ne gère pas de la même façon les high scores et donc les fichier .hi n'ont pas la même structure. Deplus tous les jeux ne fonctionne pas.


Donc c'est faisable mais un peut compliqué à faire.

Pour ma part je n'ai pas les compétence informatique pour le faire.

Il y a un autre souci, c'est comment éviter les petits malins qui triche?


Une autre solution serai de recoder directement MAME mais la c'est encore plus compliqué.
CrossBox Youtube: http://www.youtube.com/channel/UCM37h4H ... ture=watch

Image

Image
yoanna330 a écrit :
psykotine a écrit : On discute pas les prix c'est dans les règles !
C'est ce que m'a dit une fois une pute qui avait du sang sur ses collants.

jimbo
stick de plastique
Messages : 8
Inscription : 24 juil. 2009, 10:43

Re: Possible de récupérer les scores des différents jeux ?

#3 Message par jimbo »

Merci pour ta réponse, je viens de chercher dans mon dossier MAME et je n'ai pas trouvé de répertoire "hi", en même temps je quitte toujours les jeux à l'arrache avant le "game over", est-ce pour ca que je n'ai pas de répertoire "hi" ?

Avatar de l’utilisateur
Graham
stick de zinc
Messages : 362
Inscription : 27 sept. 2008, 00:45
Localisation : Saint-Maur-des-Fossés (94)

Re: Possible de récupérer les scores des différents jeux ?

#4 Message par Graham »

... probable.

Avatar de l’utilisateur
stickcross
stick de platine
Messages : 2591
Inscription : 25 juin 2008, 15:09
Localisation : Toulouse

Re: Possible de récupérer les scores des différents jeux ?

#5 Message par stickcross »

Pas sur que Mame officiel est cette fonction. Envoi ton mame.ini pour voir.

Normalement il faut appliquer le diff de mkchamp, dans groovymame il y est de base.
CrossBox Youtube: http://www.youtube.com/channel/UCM37h4H ... ture=watch

Image

Image
yoanna330 a écrit :
psykotine a écrit : On discute pas les prix c'est dans les règles !
C'est ce que m'a dit une fois une pute qui avait du sang sur ses collants.

Avatar de l’utilisateur
stickcross
stick de platine
Messages : 2591
Inscription : 25 juin 2008, 15:09
Localisation : Toulouse

Re: Possible de récupérer les scores des différents jeux ?

#6 Message par stickcross »

J'ai cherché un peut et j'ai trouvé un soft promoteur et qui explique aussi comment cela fonctionne.

Ce soft traduit les fichiers .hi en txt lisible

C'est hi2txt et ça ce trouve la: http://greatstone.free.fr/hi2txt/


Et la ou tout à commencé et le monsieur avait la même idée que moi.

Mais comme je l'ai déja dit aucun jeux n'est pareil du coup cela deviens trés compliqué.
CrossBox Youtube: http://www.youtube.com/channel/UCM37h4H ... ture=watch

Image

Image
yoanna330 a écrit :
psykotine a écrit : On discute pas les prix c'est dans les règles !
C'est ce que m'a dit une fois une pute qui avait du sang sur ses collants.

jimbo
stick de plastique
Messages : 8
Inscription : 24 juil. 2009, 10:43

Re: Possible de récupérer les scores des différents jeux ?

#7 Message par jimbo »

Merci pour toutes ces infos,
mon MAME et bien la dernière version officiel récupéré sur le site de Mame :

Code : Tout sélectionner

#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
rompath                   roms
hashpath                  hash
samplepath                samples
artpath                   artwork
ctrlrpath                 ctrlr
inipath                   .;ini
fontpath                  .
cheatpath                 cheat
crosshairpath             crosshair

#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory             cfg
nvram_directory           nvram
input_directory           inp
state_directory           sta
snapshot_directory        snap
diff_directory            diff
comment_directory         comments

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  0
playback                  
record                    
mngwrite                  
aviwrite                  
wavwrite                  
snapname                  %g/%i
snapsize                  auto
snapview                  internal
snapbilinear              1
statename                 %g
burnin                    0

#
# CORE PERFORMANCE OPTIONS
#
autoframeskip             0
frameskip                 0
seconds_to_run            0
throttle                  1
sleep                     1
speed                     1.0
refreshspeed              0

#
# CORE ROTATION OPTIONS
#
rotate                    1
ror                       0
rol                       0
autoror                   0
autorol                   0
flipx                     0
flipy                     0

#
# CORE ARTWORK OPTIONS
#
artwork_crop              0
use_backdrops             1
use_overlays              1
use_bezels                1
use_cpanels               1
use_marquees              1

#
# CORE SCREEN OPTIONS
#
brightness                1.0
contrast                  1.0
gamma                     1.0
pause_brightness          0.65
effect                    none

#
# CORE VECTOR OPTIONS
#
antialias                 1
beam                      1.0
flicker                   0

#
# CORE SOUND OPTIONS
#
samplerate                48000
samples                   1
volume                    0

#
# CORE INPUT OPTIONS
#
coin_lockout              1
ctrlr                     
mouse                     0
joystick                  1
lightgun                  0
multikeyboard             0
multimouse                0
steadykey                 0
ui_active                 0
offscreen_reload          0
joystick_map              auto
joystick_deadzone         0.3
joystick_saturation       0.85
natural                   0
joystick_contradictory    0
coin_impulse              0

#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#
paddle_device             keyboard
adstick_device            keyboard
pedal_device              keyboard
dial_device               keyboard
trackball_device          keyboard
lightgun_device           keyboard
positional_device         keyboard
mouse_device              mouse

#
# CORE DEBUGGING OPTIONS
#
update_in_pause           0
debugscript               

#
# CORE MISC OPTIONS
#
drc                       1
drc_use_c                 0
drc_log_uml               0
drc_log_native            0
bios                      
cheat                     0
skip_gameinfo             0
uifont                    default
ramsize                   
confirm_quit              0
ui_mouse                  0
autoboot_command          
autoboot_delay            2
autoboot_script           
http                      0
http_port                 8080
http_path                 web
console                   0

#
# OSD DEBUGGING OPTIONS
#
log                       0
verbose                   0
debug                     0
debugger                  auto
oslog                     0
watchdog                  0

#
# OSD PERFORMANCE OPTIONS
#
multithreading            0
numprocessors             auto
bench                     0

#
# OSD VIDEO OPTIONS
#
video                     auto
numscreens                1
window                    0
maximize                  1
keepaspect                1
unevenstretch             1
waitvsync                 0
syncrefresh               0

#
# OSD PER-WINDOW VIDEO OPTIONS
#
screen                    auto
aspect                    auto
resolution                auto
view                      auto
screen0                   auto
aspect0                   auto
resolution0               auto
view0                     auto
screen1                   auto
aspect1                   auto
resolution1               auto
view1                     auto
screen2                   auto
aspect2                   auto
resolution2               auto
view2                     auto
screen3                   auto
aspect3                   auto
resolution3               auto
view3                     auto

#
# OSD FULL SCREEN OPTIONS
#
switchres                 0

#
# OSD SOUND OPTIONS
#
sound                     auto
audio_latency             2

#
# WINDOWS DEBUGGING OPTIONS
#
debugger_font             "Lucida Console"
debugger_font_size        9

#
# WINDOWS PERFORMANCE OPTIONS
#
priority                  0
profile                   0

#
# WINDOWS VIDEO OPTIONS
#
prescale                  1
menu                      0

#
# DIRECTDRAW-SPECIFIC OPTIONS
#
hwstretch                 1

#
# DIRECT3D-SPECIFIC OPTIONS
#
filter                    1

#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlsl_enable               0
hlslpath                  hlsl
hlsl_prescale_x           0
hlsl_prescale_y           0
hlsl_preset               -1
hlsl_write                
hlsl_snap_width           2048
hlsl_snap_height          1536
shadow_mask_alpha         0.0
shadow_mask_texture       aperture.png
shadow_mask_x_count       320
shadow_mask_y_count       240
shadow_mask_usize         0.09375
shadow_mask_vsize         0.109375
curvature                 0.03
pincushion                0.03
scanline_alpha            1.0
scanline_size             1.0
scanline_height           1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.0
scanline_jitter           0.0
defocus                   0.0,0.0
converge_x                0.3,0.0,-0.3
converge_y                0.0,0.3,-0.3
radial_converge_x         0.0,0.0,0.0
radial_converge_y         0.0,0.0,0.0
red_ratio                 1.0,0.0,0.0
grn_ratio                 0.0,1.0,0.0
blu_ratio                 0.0,0.0,1.0
saturation                1.4
offset                    0.0,0.0,0.0
scale                     0.95,0.95,0.95
power                     0.8,0.8,0.8
floor                     0.05,0.05,0.05
phosphor_life             0.4,0.4,0.4

#
# NTSC POST-PROCESSING OPTIONS
#
yiq_enable                0
yiq_cc                    3.59754545
yiq_a                     0.5
yiq_b                     0.5
yiq_o                     1.570796325
yiq_p                     1.0
yiq_n                     1.0
yiq_y                     6.0
yiq_i                     1.2
yiq_q                     0.6
yiq_scan_time             52.6
yiq_phase_count           2

#
# VECTOR POST-PROCESSING OPTIONS
#
vector_length_scale       0.8
vector_length_ratio       500.0

#
# BLOOM POST-PROCESSING OPTIONS
#
vector_bloom_scale        0.3
raster_bloom_scale        0.225
bloom_lvl0_weight         1.0
bloom_lvl1_weight         0.21
bloom_lvl2_weight         0.19
bloom_lvl3_weight         0.17
bloom_lvl4_weight         0.15
bloom_lvl5_weight         0.14
bloom_lvl6_weight         0.13
bloom_lvl7_weight         0.12
bloom_lvl8_weight         0.11
bloom_lvl9_weight         0.10
bloom_lvl10_weight        0.09

#
# FULL SCREEN OPTIONS
#
triplebuffer              0
full_screen_brightness    1.0
full_screen_contrast      1.0
full_screen_gamma         1.0

#
# INPUT DEVICE OPTIONS
#
dual_lightgun             0
Je n'ai donc pas de fichier .hi mais j'ai trouvé des fichier nvram .
Je bosse avec 2 Dev Web et je vous tiendrait au courant de ce qu'on arrivent à faire avec tout ca =)

Encore Merci.

Avatar de l’utilisateur
stickcross
stick de platine
Messages : 2591
Inscription : 25 juin 2008, 15:09
Localisation : Toulouse

Re: Possible de récupérer les scores des différents jeux ?

#8 Message par stickcross »

La gestion des hi score n'est pas un truc officiel, du coup faux compiler son MAME avec le diff de MKchamp.


Si vous arrivez à faire un truc avec tout ça ce serai trop de la boulette.
CrossBox Youtube: http://www.youtube.com/channel/UCM37h4H ... ture=watch

Image

Image
yoanna330 a écrit :
psykotine a écrit : On discute pas les prix c'est dans les règles !
C'est ce que m'a dit une fois une pute qui avait du sang sur ses collants.

Avatar de l’utilisateur
Ichi Sumeragi
stick d'argent
Messages : 596
Inscription : 26 juil. 2014, 17:35

Re: Possible de récupérer les scores des différents jeux ?

#9 Message par Ichi Sumeragi »

Techniquement,ça aurait pas été hyper compliqué si tous les jeux avaient le même format.

Personne a un petit c/c d'un fichier de hi scores converti en txt? Juste un extrait que je puisse voir la tronche du truc (de préférence avec 2-3 jeux histoire de voir la différence).

Avatar de l’utilisateur
stickcross
stick de platine
Messages : 2591
Inscription : 25 juin 2008, 15:09
Localisation : Toulouse

Re: Possible de récupérer les scores des différents jeux ?

#10 Message par stickcross »

Tu as un exemple sur cette page du site, c'est tout con c'est séparé par des barres donc facilement exploitable dans un tableau

http://greatstone.free.fr/hi2txt/doc/index.html

Le truc aussi serai que cela puisse faire l'inverse, pour modifier les fichiers .hi et nvram des joueurs pour être à jour.


J'ai regarder le tuto pour créer les fichiers xml de chaque jeux et j'ai eu mal aux cheveux tout est en hexa.
CrossBox Youtube: http://www.youtube.com/channel/UCM37h4H ... ture=watch

Image

Image
yoanna330 a écrit :
psykotine a écrit : On discute pas les prix c'est dans les règles !
C'est ce que m'a dit une fois une pute qui avait du sang sur ses collants.

Avatar de l’utilisateur
Ichi Sumeragi
stick d'argent
Messages : 596
Inscription : 26 juil. 2014, 17:35

Re: Possible de récupérer les scores des différents jeux ?

#11 Message par Ichi Sumeragi »

Dans ce cas,ils ont tous le même format,non? Tous séparés avec des barres avec les données dans le même ordre?

A mon avis,c'est pas suuuper compliqué à faire, si c'est le cas. Le seul souci, c'est qu'il faut voir si il est possible de reconvertir le fichier de hi score depuis un txt vers son format d'origine (lisible par MAME).

La mise à jour pourraît être faite au lancement d'un petit programme (typiquement,un petit exe ferait l'affaire je pense). Mais là encore,faut une BDD commune et je t'avoue que comme je t'avais dit par MP pour le petit site avec les scorings,je sais pas encore utiliser un SGBD sur un serveur. A priori, son IP et les logs devraient me suffire.

Je vais essayer de pondre un petit truc de test dans la soirée ou dans la semaine, et aviser après pour l'intégration sur le serveur.

Avatar de l’utilisateur
Graham
stick de zinc
Messages : 362
Inscription : 27 sept. 2008, 00:45
Localisation : Saint-Maur-des-Fossés (94)

Re: Possible de récupérer les scores des différents jeux ?

#12 Message par Graham »

Je pense que votre projet d'une base de donnée HiScore partagée en exploitant une mise à jour ponctuelle de HiScore.dat peut le faire.

Mais le petit programme qui se lance avant MAME ça ne suffirait pas.
En effet, les scores s'enregistrent après la partie, donc il faudrait que dés que MAME soit fermé, le fichier HiScore.dat soit analysé puis uploadé.

On pourrait plutôt imaginer un petit programme dans la barre des tâches qui échangé régulièrement avec une base de donnée SQL pour toujours mettre les scores les plus hauts dans les hiscore.dat de chaque utilisateur, pour peu que MAME soit fermé bien sur. (A voir si il est possible de le faire si MAME est actif, et voir si ça peut changer les scores dans le jeu en temps réel, mais j'y crois pas trop ...)

Le plus compliqué, c'est de parser le hiscore en fonction des différents jeux. Pour rester sérieux, il faudrait se concentrer sur 1 ou 2 jeux au début, puis au fur et à mesure grandir progressivement.
Jusqu'à pourquoi pas, prendre en charge d'autres types d'émulateurs ou de jeux.

Pour que la base SQL sature pas de trop, il serait plus simple de passer par un système d'échange PHP, basé sur des échanges par URL, du genre http://hiscore.free.fr/?jeu=dodonpachi& ... 121&p2=EME
Comme ça le serveur SQL ne reste connecté qu'à une IP, celle du serveur PHP. (et pas les 8762 utilisateurs ...)