Jump to content
Download Section Back Up, Navigate the Right Hand Menu to find files, ignore the 0s

HiToText (Hi score support)


Fyrecrypts

Recommended Posts

  • Replies 414
  • Created
  • Last Reply

Hey everyone,

I am interested in getting this to work, but for some reason I cant figure it out. It seems simple enough, but maybe someone can help.

I downloaded HiToText.exe and xml, put them in my Hyperspin folder where my HS.exe is.

My Mame folder is not in Hyperspin, but on another tree, and that is where my roms and hi folder are.

My guess is that HiToText is not seeing the hi files in a different folder branch, so the question is,

Can I point HiToText to see my hi files within my Mame substructure,

or do I have to move Mame and all its components to my Hyperspin folder?

I would love to get this to work, so any information you can provide on setup would be extremely helpful.

Link to comment
Share on other sites

@mydknytestyrm

did you turn it on in hyperspin ?

Under main settings , tools and then hiscore enable...

@neogeo123

First off is getting to find the bytes where the scores and names are placed, that in itself is not always easy....maybe you can take a look in the thread Hitotext at forum.arcadecontrols.com

There you will find some examples of some games where to find the bytes. It's a slow proces of learning but in the end you'll get there...

Then you can compare them (the bytes in the examples) with what's written in the xml file so you get a feel on how to fill it.

Hope this helps

Link to comment
Share on other sites

I did turn it on via HyperHQ and confirmed it in the settings.ini under the HS folder

[HiScore]

Active=true

Y=550

Delay=1

But still no score?

Is the game in question supported by hiscore.dat ie. Is a .hi file created by Mame?

Also, is the game also listed in the hitotext.xml?

Thanks

Link to comment
Share on other sites

@mydknytestyrm

did you turn it on in hyperspin ?

Under main settings , tools and then hiscore enable...

@neogeo123

First off is getting to find the bytes where the scores and names are placed, that in itself is not always easy....maybe you can take a look in the thread Hitotext at forum.arcadecontrols.com

There you will find some examples of some games where to find the bytes. It's a slow proces of learning but in the end you'll get there...

Then you can compare them (the bytes in the examples) with what's written in the xml file so you get a feel on how to fill it.

Hope this helps

Yeah, had a try of it with mame32 debugger, however I didn't seem to be able to search for any ascii strings... maybe I was just being a noob

Link to comment
Share on other sites

I don't think this works with newer versions of Mame for some reason. I remember I was having a lot of issues a while back with this. Even tried getting in touch with the developer with no luck. I would love to see this resurrected though!!

+1 would love to see this getting resurrected, and maybe even native support for .hi file in HS2...

Link to comment
Share on other sites

Yeah, had a try of it with mame32 debugger, however I didn't seem to be able to search for any ascii strings... maybe I was just being a noob

Only thing you need is a hexeditor and look with that in the .hi file.

You don't have to find the scores in the games, that's already done for almost all games in the hiscore.dat file.

Make a screenshot of the scores on the hiscorelist (let the attraction mode run until you get it)

Then see if you can find the scores and names in the .hi file.

Sometimes the letters aren't ascii so you have to look for numbers that correspond

Like abc = 20 21 22 or they go up by 2......change one and see if it changes anything in the hiscore-list of the game...

Dna disturber

Link to comment
Share on other sites

Only thing you need is a hexeditor and look with that in the .hi file.

You don't have to find the scores in the games, that's already done for almost all games in the hiscore.dat file.

Make a screenshot of the scores on the hiscorelist (let the attraction mode run until you get it)

Then see if you can find the scores and names in the .hi file.

Sometimes the letters aren't ascii so you have to look for numbers that correspond

Like abc = 20 21 22 or they go up by 2......change one and see if it changes anything in the hiscore-list of the game...

Dna disturber

OK, taking a look at a .hi file in a hexeditor looks like:

post-34960-142870583853_thumb.png

can quite obviously see the initials, however, can not see the scores.. any ideas?

Link to comment
Share on other sites

OK, taking a look at a .hi file in a hexeditor looks like:

[ATTACH=CONFIG]23381[/ATTACH]

can quite obviously see the initials, however, can not see the scores.. any ideas?

My guess would be that 1 st place is 10.000 or it could be 100.000

2nd 8.000 or 80.000

Look at the first bytes before the letters...

It could be that you have to multiply by 10 or 100..

Just look at the hiscore-list and you will know...

Change the digits and start a game and see if it changed

The last bytes are probably that of the highest score display in game...in the top of the screen

Next thing is looking at what kind of letters you can use when you can write a score

Using cheats is quite handy .....easiest is to enter abz first as you then know all the bytes of the alfabet, in this case it's ascii so no problem but you also have to do it for other characters as they might not be ascii...like a dot aor something..

Find the levels as well .. They could be in hex or decimals..

Dna disturber

Link to comment
Share on other sites

My guess would be that 1 st place is 10.000 or it could be 100.000

2nd 8.000 or 80.000

Look at the first bytes before the letters...

It could be that you have to multiply by 10 or 100..

Just look at the hiscore-list and you will know...

Change the digits and start a game and see if it changed

The last bytes are probably that of the highest score display in game...in the top of the screen

Next thing is looking at what kind of letters you can use when you can write a score

Using cheats is quite handy .....easiest is to enter abz first as you then know all the bytes of the alfabet, in this case it's ascii so no problem but you also have to do it for other characters as they might not be ascii...like a dot aor something..

Find the levels as well .. They could be in hex or decimals..

Dna disturber

Thanks, changed the value, started the game and voila the hiscore table had updated.. So is there an equally as simple explanation to get this game now added to the hitotext.xml ?

Link to comment
Share on other sites

Thanks, changed the value, started the game and voila the hiscore table had updated.. So is there an equally as simple explanation to get this game now added to the hitotext.xml ?

It's been awhile so i'm afraid not....the xml is somewhat hard to master....just look at other games that are more or less the same and read the instructions in the first post of the hitotext thread.

I do however have written a tutorial on the first part....i just remembered....

It will teach you what and where to look for in finding the info in the .hi files

I'll see if i can find them as it's been like 2 or 3 years that i wrote it

:hmmmm:

Link to comment
Share on other sites

It's been awhile so i'm afraid not....the xml is somewhat hard to master....just look at other games that are more or less the same and read the instructions in the first post of the hitotext thread.

I do however have written a tutorial on the first part....i just remembered....

It will teach you what and where to look for in finding the info in the .hi files

I'll see if i can find them as it's been like 2 or 3 years that i wrote it

:hmmmm:

That would be great thanks... if I can master this, I will work through the games I need adding and then look to open this up for requests to be added....

Link to comment
Share on other sites

That would be great thanks... if I can master this, I will work through the games I need adding and then look to open this up for requests to be added....

Found it...

Deciphering the game 

It's all about recognizing patterns.......and you start getting better at it in no-time ;-)

First off , make sure the game does save the scores (via nvram or in hi with the hiscore.dat)
To make things easier start the game and wait till the hiscore-table shows up and make a screenshot using F12
When you exit the game a hi or nvram is created if it didn't exist already.

Look at what kind of information you want to extract (the screenshot of the hiscore-table will give you a good indication)
Things such as :
Scores
Initials
Rounds
Coins used
Character used
Percentages
etc...


How to find them (using the screenshot of the hiscore-table and the nvram of hi file):

Scores:	- each byte stands for one digit , for instance  01 03 02 05 00 00 = 132.500
- in the right order , for instance 13 25 00 = 132.500 
- reversed , for instance 00 25 13  = 132.500

It also happens that the game only counts in 10 or 100 fold.....
Uncommon but it does happen ,  the hiscore is saved without the 1 or 2 zero's
For example :
07 50 and the hiscore-table reads 75000 (the program adds 2 zero's which are not in the nvram or hi)
1250 and the hiscore-table reads 12500 (the program adds 1 zero which is not in the nvram or hi)

Most of the time the scores are easy to detect and just use decimal values.
Occasionally the scores are in hex and you must convert them to decimals to compare them with the hiscore table of the game.
When in hex they can also be reversed etc.....

In many games the "hiscore in game" also gets saved. You'll then have two scores that are equal (always the highest score) . To find out which one is which you can hexedit one score and start up the game.
If it's the "hiscore in game" you'll see it when you play. If you see it in the hiscore-table it belongs to the number 1 score.


Initials:	- in the right order , for instance 41 42 43  
- reversed  , for instance 43,42,41
- one of the above with padding between the initials , for instance (reversed) 00 43 00 42 00 41 00
* in the above examples 41 = A , 42 = B , 43 = C ( the results of all the examples in the above will be ABC in the hiscore-table) 

The Initials are in hex. If you're lucky they are in ASCII and can be read in your hex-editor.
They can however be any value.

Most of the time you can add 1 to the value to get the next letter in the alphabet. Ocasionally you must add 2 to get the next letter.
If you're really unlucky they have no pattern (just play the game often and look what letter has what value) 

A few examples of the most common ones:
00 = A
01 = B
..
..
19 = Z
----------
41 = A
42 = B
..
..
5A = Z
----------
00 = A
02 = B
..
..
32 = Z

Remember to get every character that can be put in the initials !

Some usefull hints:
Play the game and enter ABZ (this should get you the whole alphabet if there is a pattern, if there is a lowercase as well , you have to repeat it in lowercase)
For numbers you can do the same enter 019 as your initials
Play the game and enter all the other characters , for example ( ) ! < > - (you should really check them all by entering them even when it looks like it's all ASCII)  
Play the game and enter a character and let the initials entry time-out and see how the rest of the characters get filled up !

One advice.......cheat.dat is your friend.
To understand the data of the nvram or hi you sometimes have to play often and get huge scores (so use cheats , it works a lot faster)
You can also hexedit the scores (if you can find them) to make it easier getting on the hiscore-table.


Round/Characters:

Most of the time they are only one byte large.
You can mostly find them near the scores or initials.
They can be in hex or decimals:

Round:
for example round 10 is in hex 0A or just 10 in decimals.

Characters:
for example 00 = HOMER , 01 = BART , 02 =  LISA , 03 = MARGE

If you have a slight suspicion about a byte being a character or round , you can change the value of that one with a hexeditor to see what it does to the hiscore-table.

Dna Disturber

Here is an example of how i wrote it down for pengo :

(pengo , pengob , pengo2 , pengo2u , pengo3u , pengo4 , penta)
*clone penta needs to be added to hiscore.dat (same as pengo)

Things to extract:
*** TOP 5 ***
Initials
Score
Act (round)


The Bytes:

01,00 	score 5 (in hex, convert to decimal + add 0 at the back for real score)
02	act 5 (in hex , 01 = act 1 ,  0a = act 10)
03-05	initials 5
07,06	score 4 (in hex, convert to decimal + add 0 at the back for real score)
08	act 4 (in hex , 01 = act 1 ,  0a = act 10)
09-11	inititals 4
...
...
25,24	score 1 (in hex, convert to decimal + add 0 at the back for real score)
26	act 1 (in hex , 01 = act 1 ,  0a = act 10)
27-29	initials 1

31,30	hiscore in game (in hex, convert to decimal + add 0 at the back for real score)


The characters (ASCII) :

20 = (space)
41 = A
42 = B
..
..
5A = Z

Special character (non ascii):

5B = . (period)

You then need to convert that into the xml coding..

Some do not work with the xml as there is not a good code for it available in the xml-coding...

For instance i was working on some games that couldn't be done in xml (awaiting changes to the program from fyrecrypts to get it working but alas) :

V-Five: names in pieces (Letter padding letter padding etc)

Vimana: names in pieces (Letter padding letter padding etc)

Vanguard 2: string scores

Mr. Flea: string scores

jin: string scores

msisaac: Time can not be displayed and inserted correctly

vapor trail: Time can not be displayed and inserted correctly

spcforce: 5 x 30 as score too big for int32.....(30's are on initial list)

Probably can help somewhat on the xml but i'm rusty

Link to comment
Share on other sites

That would be great thanks... if I can master this, I will work through the games I need adding and then look to open this up for requests to be added....

Found it :

Deciphering the game 

It's all about recognizing patterns.......and you start getting better at it in no-time ;-)

First off , make sure the game does save the scores (via nvram or in hi with the hiscore.dat)
To make things easier start the game and wait till the hiscore-table shows up and make a screenshot using F12
When you exit the game a hi or nvram is created if it didn't exist already.

Look at what kind of information you want to extract (the screenshot of the hiscore-table will give you a good indication)
Things such as :
Scores
Initials
Rounds
Coins used
Character used
Percentages
etc...


How to find them (using the screenshot of the hiscore-table and the nvram of hi file):

Scores:	- each byte stands for one digit , for instance  01 03 02 05 00 00 = 132.500
- in the right order , for instance 13 25 00 = 132.500 
- reversed , for instance 00 25 13  = 132.500

It also happens that the game only counts in 10 or 100 fold.....
Uncommon but it does happen ,  the hiscore is saved without the 1 or 2 zero's
For example :
07 50 and the hiscore-table reads 75000 (the program adds 2 zero's which are not in the nvram or hi)
1250 and the hiscore-table reads 12500 (the program adds 1 zero which is not in the nvram or hi)

Most of the time the scores are easy to detect and just use decimal values.
Occasionally the scores are in hex and you must convert them to decimals to compare them with the hiscore table of the game.
When in hex they can also be reversed etc.....

In many games the "hiscore in game" also gets saved. You'll then have two scores that are equal (always the highest score) . To find out which one is which you can hexedit one score and start up the game.
If it's the "hiscore in game" you'll see it when you play. If you see it in the hiscore-table it belongs to the number 1 score.


Initials:	- in the right order , for instance 41 42 43  
- reversed  , for instance 43,42,41
- one of the above with padding between the initials , for instance (reversed) 00 43 00 42 00 41 00
* in the above examples 41 = A , 42 = B , 43 = C ( the results of all the examples in the above will be ABC in the hiscore-table) 

The Initials are in hex. If you're lucky they are in ASCII and can be read in your hex-editor.
They can however be any value.

Most of the time you can add 1 to the value to get the next letter in the alphabet. Ocasionally you must add 2 to get the next letter.
If you're really unlucky they have no pattern (just play the game often and look what letter has what value) 

A few examples of the most common ones:
00 = A
01 = B
..
..
19 = Z
----------
41 = A
42 = B
..
..
5A = Z
----------
00 = A
02 = B
..
..
32 = Z

Remember to get every character that can be put in the initials !

Some usefull hints:
Play the game and enter ABZ (this should get you the whole alphabet if there is a pattern, if there is a lowercase as well , you have to repeat it in lowercase)
For numbers you can do the same enter 019 as your initials
Play the game and enter all the other characters , for example ( ) ! < > - (you should really check them all by entering them even when it looks like it's all ASCII)  
Play the game and enter a character and let the initials entry time-out and see how the rest of the characters get filled up !

One advice.......cheat.dat is your friend.
To understand the data of the nvram or hi you sometimes have to play often and get huge scores (so use cheats , it works a lot faster)
You can also hexedit the scores (if you can find them) to make it easier getting on the hiscore-table.


Round/Characters:

Most of the time they are only one byte large.
You can mostly find them near the scores or initials.
They can be in hex or decimals:

Round:
for example round 10 is in hex 0A or just 10 in decimals.

Characters:
for example 00 = HOMER , 01 = BART , 02 =  LISA , 03 = MARGE

If you have a slight suspicion about a byte being a character or round , you can change the value of that one with a hexeditor to see what it does to the hiscore-table.

Dna Disturber

If you're having trouble working with the xml coding i may be able to help out but i'm rusty

Link to comment
Share on other sites

Posted the tutorial...but put code tags around the text....and it said that it must await approval from an admin.

I'll just wait and if it doesn't show up i'll give it another go....without the code tags

:)

Still can't see the tut dude, have seen other posts by users in the support forum, mentioning that their posts needed to be approved by a mod...

Link to comment
Share on other sites

attempt nr 2

Deciphering the game

It's all about recognizing patterns.......and you start getting better at it in no-time ;-)

First off , make sure the game does save the scores (via nvram or in hi with the hiscore.dat)

To make things easier start the game and wait till the hiscore-table shows up and make a screenshot using F12

When you exit the game a hi or nvram is created if it didn't exist already.

Look at what kind of information you want to extract (the screenshot of the hiscore-table will give you a good indication)

Things such as :

Scores

Initials

Rounds

Coins used

Character used

Percentages

etc...

How to find them (using the screenshot of the hiscore-table and the nvram of hi file):

Scores: - each byte stands for one digit , for instance 01 03 02 05 00 00 = 132.500

- in the right order , for instance 13 25 00 = 132.500

- reversed , for instance 00 25 13 = 132.500

It also happens that the game only counts in 10 or 100 fold.....

Uncommon but it does happen , the hiscore is saved without the 1 or 2 zero's

For example :

07 50 and the hiscore-table reads 75000 (the program adds 2 zero's which are not in the nvram or hi)

1250 and the hiscore-table reads 12500 (the program adds 1 zero which is not in the nvram or hi)

Most of the time the scores are easy to detect and just use decimal values.

Occasionally the scores are in hex and you must convert them to decimals to compare them with the hiscore table of the game.

When in hex they can also be reversed etc.....

In many games the "hiscore in game" also gets saved. You'll then have two scores that are equal (always the highest score) . To find out which one is which you can hexedit one score and start up the game.

If it's the "hiscore in game" you'll see it when you play. If you see it in the hiscore-table it belongs to the number 1 score.

Initials: - in the right order , for instance 41 42 43

- reversed , for instance 43,42,41

- one of the above with padding between the initials , for instance (reversed) 00 43 00 42 00 41 00

* in the above examples 41 = A , 42 = B , 43 = C ( the results of all the examples in the above will be ABC in the hiscore-table)

The Initials are in hex. If you're lucky they are in ASCII and can be read in your hex-editor.

They can however be any value.

Most of the time you can add 1 to the value to get the next letter in the alphabet. Ocasionally you must add 2 to get the next letter.

If you're really unlucky they have no pattern (just play the game often and look what letter has what value)

A few examples of the most common ones:

00 = A

01 = B

..

..

19 = Z

----------

41 = A

42 = B

..

..

5A = Z

----------

00 = A

02 = B

..

..

32 = Z

Remember to get every character that can be put in the initials !

Some usefull hints:

Play the game and enter ABZ (this should get you the whole alphabet if there is a pattern, if there is a lowercase as well , you have to repeat it in lowercase)

For numbers you can do the same enter 019 as your initials

Play the game and enter all the other characters , for example ( ) ! < > - (you should really check them all by entering them even when it looks like it's all ASCII)

Play the game and enter a character and let the initials entry time-out and see how the rest of the characters get filled up !

One advice.......cheat.dat is your friend.

To understand the data of the nvram or hi you sometimes have to play often and get huge scores (so use cheats , it works a lot faster)

You can also hexedit the scores (if you can find them) to make it easier getting on the hiscore-table.

Round/Characters:

Most of the time they are only one byte large.

You can mostly find them near the scores or initials.

They can be in hex or decimals:

Round:

for example round 10 is in hex 0A or just 10 in decimals.

Characters:

for example 00 = HOMER , 01 = BART , 02 = LISA , 03 = MARGE

If you have a slight suspicion about a byte being a character or round , you can change the value of that one with a hexeditor to see what it does to the hiscore-table.

Dna Disturber

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...