Re: Dune 2000 String Table Editor - XCC ForumRegister | Login | Search
History | Home | Messages

Dune 2000 String Table EditorSiberian GRemlin18:09 13-12-2002
Re: Dune 2000 String Table EditorOlaf van der Spek23:06 13-12-2002
Re: Dune 2000 String Table EditorSiberian GRemlin16:20 17-12-2002
Re: Dune 2000 String Table EditorOlaf van der Spek18:16 17-12-2002
Re: Dune 2000 String Table EditorSiberian GRemlin14:04 18-12-2002

> > > > I finaly finished D2K String Table Editor. How about to support my D2K String Table Editor in XCC Mixer???

> > > What kind of support?

> > item in menu launch in xcc mixer (launch\string table tditor\dune 2000) or some another.

> That's possible.

> > I can write description of d2k string tables to create it yourself. if you want.

> Is it similar to the RA2 CSF format?

Not at all. File and\or Strings not compresed. simple RA2 CSF file format,
but difficult D2\TD\RA1\SS string tables(dune.eng\conquer.eng).

I'll use Pascal notation, and any code samples will be in
Pascal. And I sorry for my english.

String Tables located in [Dune2K Folder]\DATA\UI_DATA\text.uib
TEXT.UIB Description:

STUIBHeader: record
Strs: DWord; //Counts of strings(amount of lines).
end;

Following that string tables...
STUIBBody: array[0..STUIHeader.Strs] of record //v 1.02 [0..1256], v1.06 [0..1321]
NameCount: Word; //Amount of symbols in StringDescription (in next variable).
StrName: array[0.255] of char; //StringDescription.
StrCount: word; //Amount of symbols in String (in next variable).
Str: array[0..999] of char; //String.
end;

it's all.

It's my procedure in my D2K String Table Editor (I compiled this on Delphi7):

Procedure OpenString;
var Mstr:TMemoryStream;
i:Integer;
begin
Mstr:=TMemoryStream.Create;
Mstr.LoadFromFile('data\ui_data\text.uib');
Mstr.Position:=0;
//read "header"
Mstr.ReadBuffer(STUIBHeader.Counts,1);
Mstr.ReadBuffer(STUIBHeader.Zero,3);
//read body
for i:=0 to 1321 do begin
Mstr.ReadBuffer(STUIBBody[i].NameCount,2);
Mstr.ReadBuffer(STUIBBody[i].StrName,STUIBBody[i].NameCount);
Mstr.ReadBuffer(STUIBBody[i].StrCount,2);
Mstr.ReadBuffer(STUIBBody[i].Str,STUIBBody[i].StrCount);
Form1.StringGrid1.Cols[0].Add(STUIBBody[i].StrName);
Form1.StringGrid1.Cols[1].Add(STUIBBody[i].Str);
end;
Mstr.free;
end;

If you want, i can write procedure SaveProcedure.

I not known C++. May be you can write(or send me via email) description of RA CSF format.

Thanks.


Re: Dune 2000 String Table EditorSiberian GRemlin17:25 20-12-20023
    Re: Dune 2000 String Table EditorOlaf van der Spek19:18 20-12-2002
        Re: Dune 2000 String Table EditorSiberian GRemlin15:52 23-12-2002


Home | Post | Users | Messages