ROM Hack Edit .dat fonts

  • Thread starter Thread starter Irkides
  • Start date Start date
  • Views Views 3,370
  • Replies Replies 2

Irkides

Member
Newcomer
Joined
Jun 1, 2012
Messages
9
Reaction score
1
Trophies
0
Website
sites.google.com
XP
18
Country
Well, I'm translating a game to Spanish, so I have to include tittles. The font is in .dat format, so It's difficult for me edit it. Anyone knows how to do it? The game is called Time Ace.
 
I have already investigated that format:

+ First 4 bytes (uint) is the number of chars.
+ For each char, there are 4 bytes (uint) with the offset of the char info.
+ Char info:
1 byte -> Widht
1 byte -> Height
Width * Height bytes -> char image, 8bpp
+ The first char is 0x20 so to find one char in the offset table, first you need to get the ASCII+Latin-1 code, substract 0x1F and then multiplied it by 4.

Program: Font editor
 
Edit.... way way too late.

Interesting game to pull apart- awful lot of DS SDK 3d and might make a good case study in 3d level formats to say nothing of the handful of developer leftovers (ini files, text files and such) although none of those appeared as nice as some we have seen. Still .dat is a generic extension much like .bin that is used across computing and means nothing in particular. Certainly there is no common font format with the extension ".dat" that I am aware of at present (edit apparently it has been seen before in this format).

Still I had a look and most appear to be a GBA 8bpp format and what might have been character by character/glyph by glyph sizes (some looked better with 8 by something and others looked like they were italic but looked fine if you went to 7 by something or 9 by something). Crystaltile2 and looking at the hex appears to want to break it down further into individual files although unlike some nasty fonts most of this appears to be fairly tame.

The start of the file appears to be pointers (standard flipped pointers- no offsets or relative stuff going on) although before those there appeared to be a file count in hex (also little endian) and then comes the location of the first file (0404 hex in all that I looked at).

Being a font it does not have many colours (it looked like it might be a more or less four colour affair with 00 01 02 and 03 being most of the hex in the file) but 07 and CD appeared in places as well as some others. With the font not being immediately viewable my first instinct with them is to consider them dimensions data but CD might have been blank data/end of character though as it appears for a lot of the smallest ones. It appears in this case my instinct might have been correct with 8 bits being given to width and the next 8 bits to height although I am not entirely sure how the games handles the 8 bits you have just used for it (it looks like it ignores them and forms the character immediately after that).

I could do a picture but with every character largely being a custom size it does not amount to much, it is one of the first uses I have had of crystaltile2 byte jump feature in a while though though (you can tell it to ignore so many bytes at the start of every tile in the fourth option of tile property section).
 

Site & Scene News

Popular threads in this forum