Формат elevdump файла. {PageX} {PageZ} {NodeX} {NodeZ} {NodeRadius} {TextureCount} {HeightCount} {space separated Texture list} {space separated Height list} [X страницы] [Z страницы] [X узла] [Z узла] [Радиус узла] [Количество текстур] [Количество высот] [Перечень текстур] [Перечень высот] Например: elevdump version 1 0 0 0 0 4 1 1 0 0 0 0 8 0 4 1 1 0 0 0 0 16 0 4 1 1 0 0 Волшебное слово "elevdump version 1", для миров 3.х. Или "elevdump version 2", для миров 4.х. Страница - участок террайна размером 128 на 128 ячеек. X страницы. Номер страницы по оси X (запад(положительные) - восток(отрицательные)). Z страницы. Номер страницы по оси Z (север(положительные) - юг(отрицательные)). Страница X=0, Z=0 находится в центре мира, и занимает ячейки от W=63 до E=64 и от N=63 до S=64, во всех случаях - включительно. Узел - квадратный участок страницы со стороной размером в 2 или 4, 8, 16, 32, 64, 128 ячеек (подтверждена работоспособность узлов 8х8). X узла. Номер юго-восточной крайней угловой ячейки узла на странице по оси X от юго-восточного угла страницы, слева направо(от 0 до 127). Z узла. Номер юго-восточной крайней угловой ячейки узла на странице по оси Z от юго-восточного угла страницы, снизу вверх(от 0 до 127). Радиус узла. Узел - квадратный, имеется ввиду половина длины стороны. Для узла 8х8 - "4". Количество текстур. Если все ячейки узла имеют одну и туже текстуру - "1". Если не все - количество ячеек в узле. Для узла 8х8 - "64". Количество высот. Если все ячейки узла имеют одну и туже высоту - "1". Если не все - количество ячеек в узле. Для узла 8х8 - "64". Перечень текстур. Если все ячейки узла имеют одну и туже текстуру - номер текстуры. Если не все - перечисление текстур ячеек подряд, от юго-восточного угла слева направо, снизу вверх. Столько чисел, сколько ячеек в узле. Для узла 8х8 - "64". Диапазон текстур от 0 до 62 для elevdump version 1. Диапазон текстур от 0 до 500 для elevdump version 2. Причём к номеру текстуры прибавляется число 64, столько раз, сколько раз текстура повёрнута вокруг вертикальной оси с шагом 90 градусов, для elevdump version 1. 64 - один поворот на 90 градусов. 128 - два поворота на 90 градусов. 192 - три поворота на 90 градусов. Причём к номеру текстуры прибавляется число 16384, столько раз, сколько раз текстура повёрнута вокруг вертикальной оси с шагом 90 градусов, для elevdump version 2. 16384 - один поворот на 90 градусов. 32768 - два поворота на 90 градусов. 49152 - три поворота на 90 градусов. Отверстие в террайне - текстура номер "254" для elevdump version 1. Отверстие в террайне - текстура номер "65534" для elevdump version 2. Перечень высот. Если все ячейки узла имеют одну и туже высоту - величина высоты. Если не все - перечисление высот ячеек подряд, от юго-восточного угла слева направо, снизу вверх. Столько чисел, сколько ячеек в узле. Для узла 8х8 - "64". Допустимые значения высоты от -32768 до 32767 (в сантиметрах), для elevdump version 1. И от -100000 до 100000 (в сантиметрах), elevdump version 2. Примечания: Ограничение количества текстур, 501 штука (для elevdump version 2), это ограничение миров версии 4.х, сам формат позволяет иметь более 16000 текстур. Ограничение диапазона высот, плюс/минус километр (для elevdump version 2), это ограничение миров версии 4.х, сам формат позволяет иметь больший диапазон. Для elevdump version 1, ограничение количества текстур и диапазона высот в самом формате. Примеры: 0 0 56 48 4 1 1 0 0 X страницы = 0 Z страницы = 0 X узла = 56 Z узла = 48 Радиус узла = 4 Количество текстур = 1 (весь участок 8х8 застелен одной текстурой) Количество высот = 1 (весь участок 8х8 имеет одну высоту - плоский) Перечень текстур = 0 (весь участок 8х8 застелен одной текстурой - "terrain0") Перечень высот = 0 (весь участок 8х8 имеет одну высоту - "0") 0 0 88 40 4 1 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -32000 -32000 0 0 0 0 0 0 -30000 -30000 0 0 0 0 0 0 -28000 -28000 0 0 0 0 0 0 -26000 -26000 0 0 0 0 0 0 -24000 -24000 0 0 0 0 0 0 X страницы = 0 Z страницы = 0 X узла = 88 Z узла = 40 Радиус узла = 4 Количество текстур = 1 (весь участок 8х8 застелен одной текстурой) Количество высот = 64 (по крайней мере одна ячейка имеет высоту отличную от других ячеек узла) Перечень текстур = 0 (весь участок 8х8 застелен одной текстурой - "terrain0") Перечень высот = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -32000 -32000 0 0 0 0 0 0 -30000 -30000 0 0 0 0 0 0 -28000 -28000 0 0 0 0 0 0 -26000 -26000 0 0 0 0 0 0 -24000 -24000 0 0 0 0 0 0 (высоты ячеек перечисляются подряд, от юго-восточного угла слева направо, снизу вверх. 64 числа.) 0 0 80 40 4 64 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32000 32000 -32000 -32000 -32000 -32000 -32000 -32000 30000 30000 -30000 -30000 -30000 -30000 -30000 -30000 28000 28000 -28000 -28000 -28000 -28000 -28000 -28000 26000 26000 -26000 -26000 -26000 -26000 -26000 -26000 24000 24000 -24000 -24000 -24000 -24000 -24000 -24000 X страницы = 0 Z страницы = 0 X узла = 80 Z узла = 40 Радиус узла = 4 Количество текстур = 64 (по крайней мере одна ячейка имеет текстуру отличную от других ячеек узла) Количество высот = 64 (по крайней мере одна ячейка имеет высоту отличную от других ячеек узла) Перечень текстур = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 128 128 0 0 0 0 0 0 (высоты ячеек перечисляются подряд, от юго-восточного угла слева направо, снизу вверх. 64 числа.) Перечень высот = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32000 32000 -32000 -32000 -32000 -32000 -32000 -32000 30000 30000 -30000 -30000 -30000 -30000 -30000 -30000 28000 28000 -28000 -28000 -28000 -28000 -28000 -28000 26000 26000 -26000 -26000 -26000 -26000 -26000 -26000 24000 24000 -24000 -24000 -24000 -24000 -24000 -24000 (высоты ячеек перечисляются подряд, от юго-восточного угла слева направо, снизу вверх. 64 числа.)