Jump to content
IGNORED

How to get MAME to keep high scores?


yuppicide

Recommended Posts

Just a thought, but most emulators have a save state. You could just save your game before turning it off, and as long as you remember to reload the game, it should remember your high score.

 

Actual arcades were rarely battery backed, as they typically stayed plugged in (and turned on) their whole life.

Link to comment
Share on other sites

  • 3 years later...

Actual arcades were rarely battery backed, as they typically stayed plugged in (and turned on) their whole life.

 

 

I was around many arcades in my time. (My local mall had THREE at one time.) and not one of them kept the games turned on when they closed. Plugged in, maybe. But not turned on.

Link to comment
Share on other sites

If an Arcade machine had NVRAM (I.E. Williams "classics" - Joust, Bubbles, Sinister, Robotron: 2084), it will keep your high scores even when turned off. For the machines without NVRAM or some sort of battery backup you would lose high scores once powered off.

 

Older versions of MAME (From several years ago) utilize a high score file for saving, but newer versions of MAME do not as utilizing such a file can introduce bugs because it is hacking data to achieve its goal, as well as not truly simulating what the actual arcade machine is doing. Variants of the official version do still support the file though as noted in the above responses.

 

The work around for preserving scores while not introducing hacks into saving the data is to utilize the 'autosave' feature which will automatically save the state of most games upon exit of it being emulated. When you reload the game again, it will pick up exactly where you left off/exited, thereby preserving all scores as if the machine was never powered-off.

 

See this section of the mame.ini file:

 

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  1
playback                  
To flush or reset a machine even when autosave is enabled, hold down the Shift key and press F3. This will completely reset emulation of the game.
Link to comment
Share on other sites

As mentioned, you can simply compile your own build of MAME to enable the functionality. A guide can be found here.

I think the easiest route is to choose one of the alternate builds of MAME that supports high scores. I use MAMEPlus, myself.

It’s been a few years since I’ve tinkered with the setup, but if I recall, all I had to do was drop the hiscore.dat file in the main directory, and add a new subfolder in there called “hi”.

The score saving doesn’t work on all games, but I find that it works on the vast majority, especially the classics.

The way it works is it saves the memory location that contains the high score table when you exit the game, and loads that data back into the same memory location when you load the game next time. Be aware that if you use the “reset” function in MAME, that brings the score table back to factory default, and if you then exit the game, that table will overwrite any scores you had saved. Also, if you get a good high score, make darn sure you exit the game before powering down your system, otherwise the score won’t get written to disk. I made this mistake once when I broke my Missile Command high score; I simply powered down my MAME cabinet without exiting the game, and of course, was bummed to learn that the score hadn’t saved the next time I played the game.

Link to comment
Share on other sites

  • 5 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...