Thread: Ambermoon
View Single Post
Old 19 May 2013, 13:34   #452
st-th
Bad Taste Development
st-th's Avatar
 
Join Date: Jul 2008
Location: Bonn / Germany
Age: 46
Posts: 48
Quote:
Originally Posted by dlfrsilver View Post
i met in the 3map_texts.amb container, files which have 11 text blocks declared, when only 10 are inside !
Quote:
Originally Posted by dlfrsilver View Post
i have found one : file 336, DOR GRESTIN.

between two text blocks, there is this : "20,00,20,34,20" when both text should be seperated by "20,00,20".
There are several placeholder strings consisting of $20,$00 (or $34,$00). These are not displayed anywhere but are required for proper access of the following strings, so must not be removed. (Maybe messages that were planned but not put into the game?)

An example from English/Original/3Map_Texts.amb/336:

Code:
00000000  00 0b 00 10 00 bf 00 76  00 83 00 ac 00 70 00 36  |.......v.....p.6|
00000010  00 2f 00 02 00 13 00 3a  20 47 45 4d 53 54 4f 4e  |./.....: GEMSTON|
                ^^^^^ 9th text has length $0002
...
00000350  45 20 53 54 4f 52 45 44  20 48 45 52 45 2e 20 00  |E STORED HERE. .|
00000360  20 00 20 4e 4f 54 48 49  4e 47 20 53 50 45 43 49  | . NOTHING SPECI|
          ^^^^^ 9th text consists of <space><nul>
...
Quote:
Originally Posted by dlfrsilver View Post
a text always start by byte '$20' and ALWAYS finish by 3 bytes : '$20','$00','$20'
No. Texts are $20,"text",$20,$00. The $20 after $00 is the start of the next string. And yes, there are several inconsistancies regarding this in the files, but these are probably caused by the tool Thalion used to create them.

Quote:
Originally Posted by dlfrsilver View Post
ok, let me say it like this : the error happens with original 2Map_data.amb

There is something inside which is wrong. If you pick the files which allows to get the map label of Burnville, snakesign, and a third one in english instead of german, translate them, you put them back in the english 2Map_data.amb, go to Newlake, the game crash each time when you enter in town.
The map labels have a *fixed* length of 16 bytes (which includes the \0 terminator IIRC). So you cannot have longer names than that, and you have to pad out shorter ones with \0.

If you change the size of the map label section, internal offsets become wrong and this will crash the game.
st-th is offline  
 
Page generated in 0.05243 seconds with 9 queries