Jump to content
Fyrecrypts

HiToText (Hi score support)

Recommended Posts

I've have HiToText and my hiscore compiled version of mame .141 working in Hyperspin with some snafus.

1.) Even though I've removed the "Hotkey, %exitEmulatorKey%, CloseProcess" line from mame in Hyperlaunch it still doesn't work with Hyperlaunch enabled. It works perfectly with Hyperlaunch off or running mame from a command line. With Hyperlaunch enabled it doesn't write the .hi files.

2.) HiToText works though the scores aren't immediately updated when I exit a game. I have to open another game and then return to the previous games page for the scores to be updated.

Share this post


Link to post
Share on other sites
I've have HiToText and my hiscore compiled version of mame .141 working in Hyperspin with some snafus.

2.) HiToText works though the scores aren't immediately updated when I exit a game. I have to open another game and then return to the previous games page for the scores to be updated.

Same here, I have to move on to another game and come back to the game I just finished for the score to show up. Sounds like the program doesn't write to the file until you actually leave that particular game perhaps which makes sense. It's certainly easy enough to do though.

Now if we could have it update the scores from a list of friends as Hi Scanner did, FireCrypts other program that would be the ducks nuts. I think he said he may revisit that at some point, I sure hope he does as that would take competitive MAMING up a notch.

Share this post


Link to post
Share on other sites

Just setup mame with hiscore support and stumbled on this thread while I was browsing. Setup Hitotext at the same time. Excellent.

Thanks goes out to the people who make this possible!

:party:

Share this post


Link to post
Share on other sites

Hello all silly question I hope someone can answer. With the updated HS/HQ release is it still necessary to edit the hyper-launch script and the .ini file or will making the necessary changes within HQ work?

I've got .hi files in my mame folder but they aren't showing in HS.

Thanks! :five:

Share this post


Link to post
Share on other sites

I think you should change the settings.ini file directly. I also find you need to move off of the game and go back to it for the scores to appear.

Hello all silly question I hope someone can answer. With the updated HS/HQ release is it still necessary to edit the hyper-launch script and the .ini file or will making the necessary changes within HQ work?

I've got .hi files in my mame folder but they aren't showing in HS.

Thanks! :five:

Share this post


Link to post
Share on other sites

for Hyperspin and hitotxt.

-use HyperHQ to turn on support or manually edit this file

\hyperspin\settings\settings.ini

-HiToText.exe and HiToText.xml goes in folder

\hyperspin\HiToText.exe

\hyperspin\HiToText.xml

-Must have compiled High Score support for Mame

-highscore.dat in \mame\highscore.dat

-Folder \Mame\Hi needs to be created by you if mame hasnt done it.

-some high scores may not show up if you havnt played the game and saved a high score.

-Of the some 2,000 games (just a guess) that support High scores-highscore.dat , only about 1/4 of those are supported by HiToText (for now) so they wont display HiToText

-somtimes, for me the Hi-scores show up immeditaely after a proper mame exit.

some times as stated previously you have to jiggle the wheel.

-I dont know how often Fyrecrypts updates the romnames to match the version of mame but HiToText may not display if the names dont match.

[edit]-I cant remember if this is true or not

(original HardDrive failed and havent re-installed CPWizard)

but I believe CPWizard also supports HiToText, and all of the above files and requirements would be needed, files would also go in the \cpwizard\ROOT

(highscore.dat may not be required there)

-Unless the same version of Mame is used, copying files from somone elses \mame\hi folder may not always work as different versions of mame use:

1) different naming conventions (manually rename the .hi file)

2) different methods of saving high scores.

(cant do anything to fix that that I know of)

[HiToText-command lines]

-change paths to your paths

-creates txt files you can upload into Hyperlist to create a database

-with database you can make a genre wheel and test the HiToText display easier and know which games exactly are supported by HiToText while in Hyperspin.

[Help.bat]

J:\HyperSpin\HiToText.exe -help
pause

-the following batch lines, show supported games and makes txt files

-the command lines are based off of the "help.bat" above

[hitotxt - RomList-Parents.bat]

J:\HyperSpin\HiToText.exe -lp "j:\HyperSpin\Emulators\Mame\137\mame.exe" > "J:\HyperSpin\HiToText\HTT-parents-Only.txt"
pause

[hitotxt - RomList - withClones.bat]

J:\HyperSpin\HiToText.exe -l > "J:\HyperSpin\HiToText\HTT-with clones.txt"
pause

Edited by chillinwater

Share this post


Link to post
Share on other sites

I have just noticed playing donpachi hitotext is able to write to donpachi.hi, but cannot read the data back out.

D:\HyperSpin>HiToText.exe -r d:\Dropbox\ArcadeFilesLive\mame\hi\donpachi.hi

Error: ROM Not Supported 'donpachi'

However bombjack is just fine, so I am confident my config is setup ok.

D:\HyperSpin>HiToText.exe -r d:\Dropbox\ArcadeFilesLive\mame\hi\bombjack.hi

RANK|SCORE|NAME|ROUND

1|14310|JK |3

2|10000|T.T|1

3|10000|E.E|1

4|10000|H.H|1

5|10000|K.K|1

6|10000|A.A|1

7|10000|N.N|1

8|10000|L.L|1

9|10000|T.T|1

10|10000|D.D|1

Is this expected? Does some extra work need doing on this type of thing? I am willing to put my time into the hitotext project, so this could be a good starting point for me.

Share this post


Link to post
Share on other sites

Arcadeaddict77,

donpachi isn't supported yet....this is why you get an error when you try to use the hitotext commandline.

dodonpachi however is supported....maybe that would be an option......but I have to warn you that there is just too much data on the hiscore table to fit into the screen.....

With HS 2.0 that may be otherwise as I have seen in the forum that BBB is thinking about changing the presentation of the hitotext data.

I will take a look at donpachi.....maybe I can add this one.

Dna Disturber :cheers:

Share this post


Link to post
Share on other sites

Hi guys I've been trying to get this working for a while and I think its almost working but I need some advice.

Ok I compiled my mame. Got all the files and put them in the right locations and I am seeing data being created in the mame\hi folder but I am not seeing my scores being saved in the games or it being displayed in hyperspin.

Is the directory structure important for this to work?

These are my folders.

h:\hyperspin\emulators\MAME2\

h:\hyperspin\emulators\MAME2\hi

h:\hyperspin\

I must be doing something really stupid. I am using hyperlaunch which from what I have read is a problem because it doesn't exit mame properly but when I turn off hyperlaunch mame doesn't work in hyperspin.

I have tried using mame outside of hyperspin but its also not saving.

I used mameUI rather than the mame.exe I compiled so could that be the problem?

Do I have to play each game outside of hyperspin first to get the hi scores working?

Share this post


Link to post
Share on other sites

Hi Lewis,

You should definitely alter the hyperlaunch script.

Hyperlaunch is exiting mame forced and it doesn't save the hiscores because of that.

If you search the forum you can easily find out how to do that.

Testing outside hyperspin should be done with the compiled mame that you plan to use in hyperspin....

just run the mame.exe and choose a game that is supported by the hiscore.dat

set a record and exit mame (escape)

now run it again and see if it has saved your record in the hiscore-table

And you don't have to play each game outside hyperspin to make hiscore savings work.

So let's try mame outside hyperspin first and let me know how that worked out (which mame-version are you using btw ?)

Make sure you have the hiscore.dat in the mame-folder

Dna Disturber :beer:

Share this post


Link to post
Share on other sites

Thanks for your reply Dna :)

Got it working! I was being an idiot and not using mame.exe

I am using a rather old version of mame .122 I think! Currently updating to latest version :)

Thanks again! It works great!

Share this post


Link to post
Share on other sites

Is there a way to get defender and robotron (maybe others) to display "Today's Top Scores", rather than "All-Time Top Scores" in HiToText?

Share this post


Link to post
Share on other sites

Hi TheManuel,

I'm afraid it's only the all-time topscores.....

The date on the xml-file sounds about right...

I haven't seen Fyrecrypts around lately.....I think real life is getting in the way of this hobby

I sent him an update of the xml-file a while ago but it hasn't been published yet...(contained support for a lot of clones 100+ and some new games)

Dna Disturber :cheers:

P.S. If you practise enough you don't even need the today top scores :vroam:

But maybe I have a solution to get to the all time top scores.....(if that is the problem ?)

You can also wipe and write scores using hitotext (commandline) , then you can set them to a lower score.....(use hitotext -? on the commandline for the commands )

Let me know if that works for you.......

Edited by Dna Disturber

Share this post


Link to post
Share on other sites

Where can we find your xml updates, can you post it here, Dna Disturber?

Reading "dkong.hi" works, but now writing, can that be fixed by editing xml?

Is there any interest to continue work on this project and include all the rest of the games? -- How can we contact Fyrecrypts to aks him if he has completely given up, and ask him to share the latest updates and source code?

Share this post


Link to post
Share on other sites
Where can we find your xml updates, can you post it here, Dna Disturber?

Reading "dkong.hi" works, but now writing, can that be fixed by editing xml?

Is there any interest to continue work on this project and include all the rest of the games? -- How can we contact Fyrecrypts to aks him if he has completely given up, and ask him to share the latest updates and source code?

The code has been open source since Day 1. =)

http://sourceforge.net/projects/hitotext/

Share this post


Link to post
Share on other sites
The code has been open source since Day 1. =)

http://sourceforge.net/projects/hitotext/

Yes, I got that, thank you. I thought it was not the most recent source code becasue .EXE supports reading and writing to "skyshark.hi", while there is no mention of that game anywhere in the source code or .xml file.

Q1.) So, are you still interested in this project? If yes, then we should make a tool to automatize .hi score decryption process and speed up inclusion of new games. Basically, I want to help you finish the project and I think it can all be done in less than two months, so that HiToText supports all the games supported by the most recent HiScore.DAT itself. -- How does that sound?

Q2.) My primary interest for your tool is to share hi-scores online. For example Twin Galaxies or MARP could keep the database of hi-score files to reflect current submitted records so people could actually see those scoreboards inside the game itself. -- Was this not your original intention and purpose for HiToText?

Q3.) I have a simple .BAT script that uses free shared "web-folder" account to act as server for smaller circle competitions, so for example a group of friends can beat each others records with "Live Internet Scoreboard", to make it all more interesting. -- What do you think about it?

Q4.) Reading "dkong.hi" works, but not writing, can this be fixed just by editing .xml file?

Edited by torino

Share this post


Link to post
Share on other sites
Where can we find your xml updates, can you post it here, Dna Disturber?

Hi Torino ,

This is the latest XML version I have http://members.ziggo.nl/dna-disturber/HiToText.xml, this contains the clones and a couple of new games. Last one in the xml "donpachi" doesn't work yet , ran into some problems trying to get it working with the XML... Sorry can't upload because of the type and size (wanted to do it as a txt but alas) to this forum

Regarding Q1 : This won't be easy , (almost) every game is different.

Even characters aren't always the same and most aren't ASCII.

Adressess are different , same goes for scoring , some are BCD , others hex , some reversed. It's really hard finding out where the data of the game is.

If it could be done with a tool that would of course be awesome.

Haven't worked on games for a while as I am busy with a program called PINemHi.....this is a commandline hiscore reader for vpinmame tables.

Works a little bit similar to HiToText but doesnt write the scores to nvram (yet?)....too much checksums for me....man do I hate checksums..... :motz:

@fyrecrypts....nice to see you.....hope everything is fine on the homefront

I'll leave the questions to you :), just wanted to give my 2 cents on the Q1 tool

Dna Disturber :beer:

Edited by Dna Disturber

Share this post


Link to post
Share on other sites
This is the latest XML version I have http://members.ziggo.nl/dna-disturber/HiToText.xml, this contains the clones and a couple of new games. Last one in the xml "donpachi" doesn't work yet , ran into some problems trying to get it working with the XML... Sorry can't upload because of the type and size (wanted to do it as a txt but alas) to this forum

Ok, thank you.

Regarding Q1 : This won't be easy , (almost) every game is different.

Even characters aren't always the same and most aren't ASCII.

Adressess are different , same goes for scoring , some are BCD , others hex , some reversed. It's really hard finding out where the data of the game is.

If it could be done with a tool that would of course be awesome.

98,750 = "00 09 08 07 05 00" you would call "ASCII", right?

Please describe the difference between: ASCII - BCD - HEX ?

I am making a little 'proof of concept' program that should be able to: ®ead, (w)rite, ©rack and (m)erge hi-score files. Basically it is a complete re-write of HiToText, but using pretty much the same concept, only instead of .xml it will use some arbitrary formating to keep all the necessary info, and will be written in C.

Cracking option should be able to inspect and decipher some yet unsupported format and automatically update the database with this new game, which will require some user input as well as that hi-core file contains "proper entries", i.e. at least 1st and 2nd position must be properly registered where corresponding two names have first three characters as unique A-Z symbols.

Character mapping is the greatest problem here, the only one which can not be automated fully. However, the good thing is, that's not really important if we do score merging internally, where we insert, sort and replace whatever bytes without needing to know what characters or symbols those 'name entries' actually represent. -- This is really a separate problem, it is specific only to the situation when we want to display those scoreboards *outside* of the game itself, like in some front-end or in some .html file somewhere on the interenet, but otherwise we can limit ourselves to only A-Z and make everything much, much more simple.

So, without that problem and as far as sharing and merging goes, all we need to find out where the 1st score starts and offset for the next one, similarly where the 1st name starts and the offset for the next one, the same for "stage" or whatever other fields as well.

Cracking would require user to manually enter scores and names for the first two top records as in the supplied hi-score file, plus the number of total positions as well as the maximum number of digits/symbols. Hopefully then adding a new game to the database could be done in a matter of minutes and by anyone without needing to know anything about it except how to provide adequate hi-score file and run auto-deciphering program.

Share this post


Link to post
Share on other sites
Yes, I got that, thank you. I thought it was not the most recent source code becasue .EXE supports reading and writing to "skyshark.hi", while there is no mention of that game anywhere in the source code or .xml file.

Well, the code doesn't hardcode what it supports, I took a look at the code and found it's in twincobr.cs.

Q1.) So, are you still interested in this project? If yes, then we should make a tool to automatize .hi score decryption process and speed up inclusion of new games. Basically, I want to help you finish the project and I think it can all be done in less than two months, so that HiToText supports all the games supported by the most recent HiScore.DAT itself. -- How does that sound?

It would be a great idea to allow for automatic submission into the official hitotext.xml file. I had started an application that would do this for you to some degree, but never finished. I do continue to have an interest in HiToText, but another project has essentially taken up all of my time for the last year.

Q2.) My primary interest for your tool is to share hi-scores online. For example Twin Galaxies or MARP could keep the database of hi-score files to reflect current submitted records so people could actually see those scoreboards inside the game itself. -- Was this not your original intention and purpose for HiToText?

I had worked on something called GHOST for a long time, and had a very selective alpha for it that did something like this. It utilized a different method for tracking scores to ensure cheating could not occur, but it ultimately failed because I realized my implementation was impossible or too restricting. This soured me on the project, and I continued with HiToText.

Q3.) I have a simple .BAT script that uses free shared "web-folder" account to act as server for smaller circle competitions, so for example a group of friends can beat each others records with "Live Internet Scoreboard", to make it all more interesting. -- What do you think about it?

I think that's a very cool idea, anything that lets you actually share those scores with friends is awesome in my opinion, and I'm freely allowing anyone to use any parts of HiToText to achieve whatever they want.

Q4.) Reading "dkong.hi" works, but not writing, can this be fixed just by editing .xml file?

Probably, yes. =) What's broken about it, I haven't checked it lately, but I do recall Donkey Kong has some strange top hi score properties.

Share this post


Link to post
Share on other sites
Hi Torino ,

This is the latest XML version I have http://members.ziggo.nl/dna-disturber/HiToText.xml, this contains the clones and a couple of new games. Last one in the xml "donpachi" doesn't work yet , ran into some problems trying to get it working with the XML... Sorry can't upload because of the type and size (wanted to do it as a txt but alas) to this forum

Regarding Q1 : This won't be easy , (almost) every game is different.

Even characters aren't always the same and most aren't ASCII.

Adressess are different , same goes for scoring , some are BCD , others hex , some reversed. It's really hard finding out where the data of the game is.

If it could be done with a tool that would of course be awesome.

Haven't worked on games for a while as I am busy with a program called PINemHi.....this is a commandline hiscore reader for vpinmame tables.

Works a little bit similar to HiToText but doesnt write the scores to nvram (yet?)....too much checksums for me....man do I hate checksums..... :motz:

@fyrecrypts....nice to see you.....hope everything is fine on the homefront

I'll leave the questions to you :), just wanted to give my 2 cents on the Q1 tool

Dna Disturber :beer:

Yeah, homefront is pretty stable now, and things are going well. I need to jump back into this project at some point. I feel bad letting it go so long without updates. Hope life is going well for you as well. Nice to see you putting the hi score skills to good use with the pinball though! Grats! =D

Share this post


Link to post
Share on other sites

Well, the code doesn't hardcode what it supports, I took a look at the code and found it's in twincobr.cs.

Searching for the string "shark" with "Total Commander" apperantly failed, for some reason. -- I see it now, cheers!

It would be a great idea to allow for automatic submission into the official hitotext.xml file. I had started an application that would do this for you to some degree, but never finished. I do continue to have an interest in HiToText, but another project has essentially taken up all of my time for the last year.

It is easier for me to start from scratch and re-write the whole thing in order to see what is really going on, so I'll be using different formating, but the numbers that come out of "cracking' algorithm" will surely be meaningful for HiToText as well. I would not want to have my little project separate from yours, I see it more as some simplification or mini version of HiToText, a port to C language if you will, but hopefully those simplifications and modifications can make some room for automation and facilitate speedy game inclusion, in which case we will probably want to "merge" the two projects, somehow.

Anyway, I am sure going to try, and so far my little demo program can decipher (read/write) "dkong.hi". Let us see how far can I get with this in the next couple of days, and with your help we will be able to make proper conclusions and adequate decisions about it by the next week. -- So, my second semi-auto crack attempt is now "crush.hi", and here I encountered two new score formats, I call them "HEX_6" and "HEX_5", while the format in "dkong.hi" I call "ASCII_6".

a.) ASCII_6 --> 987,500 = 09 08 07 05 00 00

b.) ASCII_5 --> 987,50x = 09 08 07 05 00

c.) ASCII_4 --> 987,5xx = 09 08 07 05

d.) HEX_6 --> 987,500 = 98 75 00

e.) HEX_5 --> 987,50x = 09 87 50

f.) HEX_4 --> 987,5xx = 98 75

Crush Roller keeps "table-scores" in HEX_5 format, but the Hi-Score itself (top of the screen) is kept in HEX_6 format?! If they rounded their scores to hundreds they could ignore two last zeros, instead of only one, and save one byte of storage by using HEX_4 format, but having two different formats for no reason is just making my auto-deciphering algorithm bigger and uglier than I'd like it to be, ughh. I'm still optimist though.

Can you tell me (with example) what other formats have you discovered for scores and names?

Do you see any problem if there was a limit to use only A-Z characters for NAME entries? -- I mean that's how people are supposed to write their names, all the other characters are unnecessary really, and there is not even equivalent graphics available on any platform to represent many of those unique and random symbols, only within emulated game-platform itself, so I think that's really important decision to make as it can make everything much more simple.

I had worked on something called GHOST for a long time, and had a very selective alpha for it that did something like this. It utilized a different method for tracking scores to ensure cheating could not occur, but it ultimately failed because I realized my implementation was impossible or too restricting. This soured me on the project, and I continued with HiToText.

I find the greatest problem is lack of people interested to participate. -- If there are at least 3-5 people ready to play in a little competition we can test "Live Arcade Scoreboard" in the same time while we are experimenting with automation of hi-score cracking.

Share this post


Link to post
Share on other sites
So, my second semi-auto crack attempt is now "crush.hi", and here I encountered two new score formats, I call them "HEX_6" and "HEX_5", while the format in "dkong.hi" I call "ASCII_6".

a.) ASCII_6 --> 987,500 = 09 08 07 05 00 00

b.) ASCII_5 --> 987,50x = 09 08 07 05 00

c.) ASCII_4 --> 987,5xx = 09 08 07 05

d.) HEX_6 --> 987,500 = 98 75 00

e.) HEX_5 --> 987,50x = 09 87 50

f.) HEX_4 --> 987,5xx = 98 75

Crush Roller keeps "table-scores" in HEX_5 format, but the Hi-Score itself (top of the screen) is kept in HEX_6 format?! If they rounded their scores to hundreds they could ignore two last zeros, instead of only one, and save one byte of storage by using HEX_4 format, but having two different formats for no reason is just making my auto-deciphering algorithm bigger and uglier than I'd like it to be, ughh. I'm still optimist though.

Can you tell me (with example) what other formats have you discovered for scores and names?

Do you see any problem if there was a limit to use only A-Z characters for NAME entries? -- I mean that's how people are supposed to write their names, all the other characters are unnecessary really, and there is not even equivalent graphics available on any platform to represent many of those unique and random symbols, only within emulated game-platform itself, so I think that's really important decision to make as it can make everything much more simple.

I find the greatest problem is lack of people interested to participate. -- If there are at least 3-5 people ready to play in a little competition we can test "Live Arcade Scoreboard" in the same time while we are experimenting with automation of hi-score cracking.

Hi Torino,

Here are some other examples I came across (scoring-wise)

All the ones you have mentioned above but then reversed

for instance:

Reversed ASCII_6 --> 987,500 = 00 00 05 07 08 09

Reversed HEX_6 --> 987,500 = 00 75 98 (time pilot)

Last one can be very tricky with default hiscore table with like 10,000

and you have 5 bytes....

It would look like it's the normal one (not reversed), came across that multiple times

10,000 = 00 00 01 00 00

There are also hex scores (metal slug)

Hex 987,500 = 0F 11 6C

Can't remember if I encountered a reversed Hex , I thought I did but it's rare

Hex + a zero behind it (pengo)

There are also ASCII scores

ASCII 987500 = 39 38 37 35 30 30

Came across 2 games , so it's pretty rare

And the very odd ones for instance joust:

The score:

The score consist of 1 digit per byte , the first 4 bits of a byte are always F

For example :

4.000 looks like : F0 F0 F0 F4 F0 F0 F0

123.450 looks like : F0 F1 F2 F3 F4 F5 F0

For instance Qbert:

The score:

It's one digit per byte (7 bytes total)

05 00 03 00 24 24 24= 5030

The score is made up by 7 bytes, they get filled at the back with 24h (spaces)

other examples

800 would look like:

08 00 00 24 24 24 24

150.400 would look like:

01 05 00 04 00 00 24

2.750.300 would look like:

02 07 05 00 03 00 00

Hope this helps :)

And about the characters, I would like to see at least some non alphabet characters in it......especially in the games where you can put more than 3 characters in.... Like - or ! and numbers , so just the regular ones.

But that's my opinion.

As for deciphering the characters I think you should check some of the old post that are on byoac forum in the HiToText thread with the decipher data in it.

I'm very curious about the result on other games.....Keep up the good work

Dna Disturber:beer:

Edited by Dna Disturber

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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.


×
×
  • Create New...