Pages

DatEdit ACE Online

DatEdit and its capabilities (tutorial RUS)
Use and learn, unfortunately in Russian!

Tutorial on writing structures.
Download 

A short guide to establish structures for dateditora. Here we consider the general construction of the structure, its variables and functions (most used). Creating and building a structure to be considered for the files from the client, as it is in these files use the largest number of features and data types.

The general structure.

[Mask for which we are searching for the structure of the file]
[The structure of the first level, which contains the initial data on the trees of the forest (the number of blocks, lines, and the total size of one block), and is the parent of the third level institutions]
[Structure of the second layer that displays the data and its type, which are in each block]

Example:
Code:
[Filemask = "example.dat"] / / indicates that the structure is created and used for file example.dat

struct ExampleFile / / struktrua first level
{
u32 exampleblock;
u32 examplecolumn;
u32 examplesize;
child ExampleBlock [count = exampleblock]; / / indicates that there is a subsidiary of the name ExampleBlock
}

struct ExampleBlock [preload = 1] / / structure of the second level, which displays the data for each block
{
u32;
u32;
}
List of types of variables, functions, and general syntax.

u32 - contains only positive decimal values. 4 bytes.
i32 - can contain both positive and negative values. 4 bytes.
x32 - contains a hex value. 4 bytes.
u16 - contains only positive decimal values. 2 bytes.
i16 - can contain both positive and negative values. 2 bytes.
x16 - contains a hex value. 2 bytes.
u8 - contains only positive decimal values. 1 byte.
i8 - can contain both positive and negative values. 1 byte.
x8 - contains a hex value. 1 byte.
float - contains floating-point values
str (or cstr) [len =] - string to ASCII encoding
wstr [len =] - string to Unicode encoding
seek () - pass a certain number of bytes. In brackets the number of bytes or or formula by which this quantity is calculated.
repeat RepeatNum {} - repeats written in curly brackets of the field is the number of times that you want. RepeatNum - the number of repetitions

Syntax:
Code:
Mostly u32 / / Variable - any combination of letters, in which the data will be stored string
wstr [len = 8] variable; / / len = 8 indicates that the field is 8 bytes. It can contain any number of
Attributes.

All attributes for each field are given in square brackets [], separated by commas
[Filemask = ""] - set a mask on which the file is searched
hidden - hides the structure or field. Can take the values ​​0 and 1
preload - loading the tree structure when the file is opened. Can take the values ​​0 and 1
tag = "" - you can specify the name of the line
readonly - makes the line available for viewing only, not changing its type. Can take the values ​​0 and 1
blob [len =] - makes available a view hex code without editing. Be sure to specify the length of the field.
count = variable - sets the amount by taking it out of the specified variable. News for specifying the number of units in the structure.
group = "" - specifies the group name for a range within a single block structure
offset - specifies the number of bytes that are passed in front of the structure, or block

vasyater2
Ragezone