Main > Software Forum

HiToText (Version 2010.11.4).

<< < (93/117) > >>

Fyrecrypts:

--- Quote from: kernelpanic on September 10, 2010, 02:39:29 pm ---so how can help with this project? Specifically, I am interested in getting some games that we play a lot into the "system" so to speak. For example, for The New Zealand Story, it only stores the top 5 scores, but it also keeps a "last round completed" value along with 3 initials. I have a screen shot with a corresponding .hi file - would that help? or do you need more?

--- End quote ---

This is doable in the XML format (read my response below)! In the meantime, I recommend taking a look at what dna disturber and Wob were doing around pages 6-9 to show how to document games so we could incorporate them into HiToText. It's a lot easier now with the XML format, so simpler games can just sorta be plugged in.

However, screenshots with .hi files are certainly better than nothing, but if you have the motivation, there's more that could be done that would make incorporating these games much faster and easier.

Thanks for wanting to contribute! The more contributors, the faster things get done. =)

kernelpanic:
ok, I'll give it go.

The NEWZEALAND STORY
ROM Name: tnzs

Keeps "Best 5" scores

.hi file length = 35 bytes, 7 bytes per record

3 bytes for score, 1 byte for round, 3 bytes for initials

byte 00-02      00 49 00 // score of 49000
byte 03           05 // round (see below)
byte 04-06      4B 41 4E // initials of KAN

rinse and repeat as necessary

byte 03 of the record is a round completed value mapped as follows

val = level-round
00 = 1-1
01 = 1-2
02 = 1-3
03 = 1-4
04 = 2-1
05 = 2-2
etc
etc
there are 5 levels of 4 rounds, up to 20 rounds total - 5-4 is the last round

I think there are only 3 special characters allowed in initials, but I'll have to dig around some more to be sure about this

. period
?
!

I don't find a NVRAM file for it.


Let me know if that's too much info, or not enuf and what else you might want/need.

kernelpanic:

--- Quote from: Fyrecrypts on September 10, 2010, 02:52:53 pm ----------------------
Version 2010.9.10
-------------------

--- End quote ---

pacman works great now - thanks! :cheers:

Fyrecrypts:

--- Quote from: kernelpanic on September 10, 2010, 04:19:13 pm ---ok, I'll give it go.

The NEWZEALAND STORY
ROM Name: tnzs

Keeps "Best 5" scores

.hi file length = 35 bytes, 7 bytes per record

3 bytes for score, 1 byte for round, 3 bytes for initials

byte 00-02      00 49 00 // score of 49000
byte 03           05 // round (see below)
byte 04-06      4B 41 4E // initials of KAN

rinse and repeat as necessary

byte 03 of the record is a round completed value mapped as follows

val = level-round
00 = 1-1
01 = 1-2
02 = 1-3
03 = 1-4
04 = 2-1
05 = 2-2
etc
etc
there are 5 levels of 4 rounds, up to 20 rounds total - 5-4 is the last round

I think there are only 3 special characters allowed in initials, but I'll have to dig around some more to be sure about this

. period
?
!

I don't find a NVRAM file for it.


--- End quote ---

After seeing this description I realize I misread your first post about the game. This is totally doable in the XML format! Here's an example game that utilizes the same basic format:

<Entry>
    <Header>
      <Games>
        <Name>alexkidd</Name>
        <Name>alexkidd1</Name>
        <Name>alexkid1</Name>  <!-- Old name -->
        <Name>alexkida</Name>  <!-- Old name -->
      </Games>
      <Fields>
        <Name>RANK</Name>
        <Name>SCORE</Name>
        <Name>NAME</Name>
        <Name>ROUND</Name>
      </Fields>
      <Extensions>
        <Name>.hi</Name>
      </Extensions>
      <TextParameters>
        <Formats>
          <Name>NeedsSpecialMapping</Name>
          <Name>ASCIIStandard</Name>
        </Formats>
        <SpecialMapping>
          <Map Char=" " Byte="0x00"/>
          <Map Char="-" Byte="0x3e"/>
          <Map Char="." Byte="0x5b"/>
          <Map Char="!" Byte="0x5e"/>
          <Map Char="&amp;" Byte="0x5f"/>
        </SpecialMapping>
      </TextParameters>
    </Header>
    <FileStructure>
      <Mapping NumberOfBlocks="7" Ordering="Ascending">
        <Entry Name="Score" Length="4"/>
        <Entry Name="Round" Length="1"/>
        <Entry Name="Name" Length="3"/>
      </Mapping>
      <Mapping NumberOfBlocks="1" Ordering="None">
        <Entry Name="HiScore" Length="4"/>
      </Mapping>
    </FileStructure>
    <SetStructure>
      <FieldName Name="Score" FieldType="int" ConversionType="IntToByteArrayHex" Position="1">
        <SpecialUtilization>EmptyScores</SpecialUtilization>
        <SpecialUtilization>IsAdjusted</SpecialUtilization>
        <SpecialUtilization Function="Standard">DetermineRank</SpecialUtilization>
      </FieldName>
      <FieldName Name="Name" FieldType="string" ConversionType="Name" Position="2">
        <SpecialUtilization>ModifyName</SpecialUtilization>
        <SpecialUtilization>IsAdjusted</SpecialUtilization>
      </FieldName>
      <FieldName Name="Round" FieldType="int" ConversionType="IntToByteArrayHex" Position="3">
        <SpecialUtilization>IsAdjusted</SpecialUtilization>
      </FieldName>
      <FieldName Name="HiScore" FieldType="int" ConversionType="IntToByteArrayHex" Position="1">
        <SpecialUtilization>EmptyScores</SpecialUtilization>
        <SpecialUtilization>IsHiScore</SpecialUtilization>
      </FieldName>
    </SetStructure>
    <DisplayStructure>
      <FieldName Name="Rank" ConversionType="CannedDisplay.AscendingFrom1"/>
      <FieldName Name="Score" ConversionType="Standard"/>
      <FieldName Name="Name" ConversionType="Name"/>
      <FieldName Name="Round" ConversionType="Standard"/>
    </DisplayStructure>
  </Entry>

kernelpanic:

--- Quote from: Fyrecrypts on September 10, 2010, 04:27:28 pm ---After seeing this description I realize I misread your first post about the game. This is totally doable in the XML format! Here's an example game that utilizes the same basic format:

--- End quote ---

Ok, I downloaded the XML guide and I'll see if I can figure out what all the stuff means.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version