|
карта мира |
|
|
|
  |
Ответов
EL-GReeN |
22.11.2013, 20:28
|

    
Journeyman
Сообщений: 474
Регистрация: 18.7.2011 Группа: Пользователи Наличность: 0 Из: Россия
Пользователь №: 13.815
Возраст: 32

|
Цитата 3.8 MAP0.MUL
This file holds all the base-level terrain, and doesn't look too pretty without the static data.
The map is stored as a 768x512 matrix of blocks. A block is basically a 8x8 matrix of cells. Each individual cell contains data about the tile for that cell, and the cell's altitude. Therefore, the entire map is 6144x4096 individual cells in size.
Blocks are loaded top-to-bottom then left-to-right. Cells are loaded from blocks left-to-right then top-to-bottom.
The formula used to locate an individual CELL in the file is a little complex, since you have to work out what block it is in...
If you refer to the map in blocks, then there's 512 blocks down, by 768 blocks across.
XBlock = Int(XPos/8) YBlock = Int(YPos/8) Block Number = (XBlock * 512) + YBlock MAP0 (37,748,736 bytes)
393,216 [Block]s sequentially, Block = 196 bytes DWORD header, unknown content 64 Cells Cell (3 bytes) 0 1 2 Color Alt
UWORD cell graphic (which can be looked up in RADARCOL). BYTE Altitude (-128..127 units above/below sea level). Помогите вычислить номер тайла в блоке, что то не доходит как это делается. Блок 8х8 загрузить получилось: Код XBlock=floor(1415/8) // Х блока YBlock=floor(1700/8) // У блока BlockNumber=(XBlock * 512) + YBlock //номер блока
for (i=0;i<=195;i+=1){//1 блок = 196 байтам, цикл счетчик для чтения 196 байтов file_bin_seek(map0,(BlockNumber*196)+i)//сдвиг метки чтения в файле data[i]=file_bin_read_byte(map0) //чтение побайтово в массив }
cnt=6 for (ii=1;ii<=8;ii+=1){ for (iii=1;iii<=8;iii+=1){ tile[iii,ii]=data[cnt] cnt+=3 } }
Результат массив tile[iii,ii] с высотой тайлов всего блока, но как определить высоту у определенного тайла?
--------------------
|
|
|
|
StaticZ |
23.11.2013, 3:04
|

        
Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009 Группа: Пользователи Наличность: 0 Из: РФ, Москва
Пользователь №: 11.948

|
Цитата(EL-GReeN @ 22.11.2013, 21:28)  Помогите вычислить номер тайла в блоке, что то не доходит как это делается.
Результат массив tile[iii,ii] с высотой тайлов всего блока, но как определить высоту у определенного тайла?
Блок это 8х8 тайлов, т.е. грубо говоря хедер (4 байта) и одномерный массив из 64 структур описывающих тайлы в этом блоке. Т.е. для тайла с координатами X,Y (от 0 до 7) индекс структуры в загруженном массиве равен 8 * X + Y (или 8 * Y + X - уже не помню). Сама структура каждого тайла состоит из 3х байт, где первые два байта это айдишник ленды из арт мула (от 0 до 0х3FFF), а последний байт собственно и есть высота. Значение хедера не выявлено, так что можете его просто игнорировать, хотя если вы хотите пересохранять мулы поли коректнее сохранять значения хедеров чтобы сохранить все в первозданном виде. Ну а дальше уже идет математика при помощи операций деления (/) и остатка от деления (%) определяются нужные вам координаты внутри блока. К примеру для тайла с координатами XPos, YPos: BlockIdx = XPos * 64 + YPos / 8 TileIdx = 8 * (X % 8) + Y % 8
--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.Game isn't a dream, it is the reality, reality which is coming while we dream...
|
|
|
|
Сообщений в этой теме
kklej карта мира 27.2.2012, 22:26 StaticZ
хей, подскажите пожалуйста где можно другую карту... 27.2.2012, 22:48 kklej спасибо за ответ! аа ещё мне как бы надо карт... 27.2.2012, 22:57 StaticZ
спасибо за ответ! аа ещё мне как бы надо кар... 27.2.2012, 23:14 kklej отлично! а это правда,что можно Аксисом статик... 27.2.2012, 23:20 StaticZ
отлично! а это правда,что можно Аксисом стати... 27.2.2012, 23:44 kklej спасиб. а вот я скачал то CentrED. чего то приконе... 28.2.2012, 0:28 StaticZ
спасиб. а вот я скачал то CentrED. чего то прикон... 28.2.2012, 1:02 kklej спасиб за прогу! я тут почитал, всё настроил. ... 28.2.2012, 1:13 StaticZ
спасиб за прогу! я тут почитал, всё настроил.... 28.2.2012, 1:21 kklej это правда, что какие то функции CentrED'a раб... 2.3.2012, 16:27 M@X
это правда, что какие то функции CentrED'a ра... 2.3.2012, 17:17 StaticZ
это правда, что какие то функции CentrED'a ра... 2.3.2012, 17:39 EL-GReeN Появилась идейка подгрузить мапу уо в одну среду р... 2.10.2012, 23:41 Warstone
Появилась идейка подгрузить мапу уо в одну среду ... 3.10.2012, 12:48  StaticZ
Для 2.0Х - 6.0Х используются mul файлы. Вообще - ... 3.10.2012, 13:57 StaticZ Ну я знаю, А можно поподробнее?
Что касается струк... 3.10.2012, 12:31 EL-GReeN Ничего серьезного просто ковыряюсь, версия обычная... 3.10.2012, 17:44 StaticZ Ничего серьезного просто ковыряюсь, версия обычная... 3.10.2012, 18:50 StaticZ Ваше впринципе UltimaSDK и создана для того чтобы ... 3.10.2012, 19:01 EL-GReeN Ошибка с осью Z, написано "-128..127 units ab... 3.10.2012, 23:33 StaticZ Ошибка с осью Z, написано "-128..127 units ab... 4.10.2012, 1:37 EL-GReeN XBlock=floor(1415/8) // Х блока
YBlock=floor(1700/... 23.11.2013, 19:59 StaticZ
BlockIdx = XPos1415 * 64 + YPos1700 / 8 //BlockId... 23.11.2013, 21:04 EL-GReeN Как клиент УО сглаживает ландшафт?
У меня вот таки... 25.11.2013, 18:03 StaticZ Чето вы в какую-то ересь подались. Все куда проще ... 25.11.2013, 21:59 EL-GReeN Я наверно плохо объяснил про какое сглаживание, сг... 26.11.2013, 9:58 StaticZ В честь этой маленькой победы :) скомпилировал рез... 15.1.2015, 0:14 EL-GReeN Что добавили в новые map0.mul?
Просто вот подгрузи... 27.11.2014, 15:19 StaticZ
Что добавили в новые map0.mul?
Просто вот подгруз... 27.11.2014, 18:46  EL-GReeN
Чего-то Вы путаете она 89 915 392 байт, вместо 77... 1.12.2014, 18:05   StaticZ
Так написано в свойствах 85,7 МБ (89 915 392 байт... 1.12.2014, 20:45 EL-GReeN Я вот в октябре импортнул в юнити карту высот, дал... 16.1.2015, 18:21 StaticZ
Я вот в октябре импортнул в юнити карту высот, да... 16.1.2015, 22:06 Warstone Раскопайте исходники Iris'а. Думаю что много м... 16.1.2015, 23:58 StaticZ
Раскопайте исходники Iris'а. Думаю что много ... 17.1.2015, 0:18 EL-GReeN Есть какой софт в котором можно получить полную ка... 23.1.2015, 20:43 StaticZ
Есть какой софт в котором можно получить полную к... 24.1.2015, 0:23 Sirocco http://www.youtube.com/watch?v=kGYR2qBNUXQ
Ну тепе... 25.1.2015, 1:34 StaticZ
http://www.youtube.com/watch?v=kGYR2qBNUXQ
Ну теп... 25.1.2015, 15:54 M0rBiT похож на Чешский сервер Endor :)
У них там весь ... 25.1.2015, 17:52 StaticZ
похож на Чешский сервер Endor :)
У них там весь... 25.1.2015, 18:07  M0rBiT
Причем тут сервер? на скринах там явно класик кли... 25.1.2015, 19:38 Sirocco Там же ссылки даны на сайт, скачайте клиент, зарег... 25.1.2015, 19:49 EL-GReeN Вот чего наделал:
http://skrinshoter.ru/s/260417/y... 26.4.2017, 16:33 Aimed
Вот чего наделал:
http://skrinshoter.ru/s/260417/... 26.4.2017, 17:48 EL-GReeN Вот что что а анимации в юньке супер, я думал что ... 26.4.2017, 20:46 Aimed
Вот что что а анимации в юньке супер, я думал что... 27.4.2017, 0:41 EL-GReeN По идиотски это когда анимация атаки сменяется на ... 27.4.2017, 7:54 Aimed
По идиотски это когда анимация атаки сменяется на... 27.4.2017, 13:58 EL-GReeN Свежий скрин:
https://yadi.sk/i/zKoE2Yf93MfDNc
На ... 6.9.2017, 21:05 Aimed
Свежий скрин:
https://yadi.sk/i/zKoE2Yf93MfDNc
На... 6.9.2017, 23:04 EL-GReeN ММОРПГ переосмысленная УО 7.9.2017, 8:25 Aimed
ММОРПГ переосмысленная УО
Зачем тогда так карту... 7.9.2017, 10:36  TeS
Зачем тогда так карту копировать? Плагиат же...
... 7.9.2017, 17:56   EL-GReeN
Для узнаваемости продукта. Сразу внушает доверее ... 8.9.2017, 18:36    Александр Needle™
https://youtu.be/8BrGRtBGnew
cpu i6400 gpu r9 28... 8.9.2017, 18:42    M0rBiT
https://youtu.be/8BrGRtBGnew
cpu i6400 gpu r9 28... 9.9.2017, 10:06   Aimed
Для узнаваемости продукта. Сразу внушает доверее ... 8.9.2017, 20:11    EL-GReeN
Ну и получиться тот же самый Shards Online, тольк... 9.9.2017, 8:44    TeS
Делай свое
Он и так свое делает, то что карта б... 9.9.2017, 16:40 EL-GReeN Китайцам сходит с рук 7.9.2017, 10:58 Александр Needle™
Китайцам сходит с рук
Отлично придумал и выгляди... 7.9.2017, 13:56 Mirage 2 EL-GReeN ты это клепаешь в клиент серверной част... 9.9.2017, 19:58 EL-GReeN Пока никакой адаптации, мне просто понятнее/удобне... 9.9.2017, 20:29 Dragon Killer лично как пом не ... трата времени ..... в 3D UO ... 9.9.2017, 22:28 Александр Needle™
лично как пом не ... трата времени ..... в 3D UO... 9.9.2017, 23:03 TeS
лично как пом не ... трата времени ..... в 3D UO... 10.9.2017, 3:41 Wap Так-то оно прикольно.
Но, блин... я боюсь тут зад... 10.9.2017, 4:49 EL-GReeN
Так-то оно прикольно.
Но, блин... я боюсь тут за... 10.9.2017, 8:07 TeS
Так-то оно прикольно.
Но, блин... я боюсь тут за... 10.9.2017, 15:22 Dragon Killer насчет Альбиона ты прав уо у них не получилось ..... 10.9.2017, 10:51 EL-GReeN
насчет Альбиона ты прав уо у них не получилось .... 10.9.2017, 11:51 Mirage 2 TeS когда приходит понимания на уровне подсознан... 10.9.2017, 21:35 TeS
Так что уж лучше делать что то атмосферно близк... 10.9.2017, 22:52 EL-GReeN Таки не псевдо, куда камеру не направь полигоны не... 10.9.2017, 22:34 EL-GReeN Кусочек БГ
https://yadi.sk/i/pm2dMQPA3NLGVg
https:... 29.9.2017, 21:06 StaticZ
Кусочек БГ
https://yadi.sk/i/pm2dMQPA3NLGVg
https... 29.9.2017, 22:45  Aimed
Это что знаменитые могилки нашкеля? Ток как-то не... 29.9.2017, 23:50   StaticZ
БГ - Брит Грейвярд.
Вот оно как оказывается... А... 30.9.2017, 0:44    Aimed
Вот оно как оказывается... А надгробия кстати на ... 30.9.2017, 4:16 Mirage [b][img]https://lurkmore.so/images/7/76/1224368306... 29.9.2017, 22:38 EL-GReeN Это?: http://www.sorcerers.net/community/media/d..... 30.9.2017, 7:52 StaticZ
Это?: http://www.sorcerers.net/community/media/d.... 30.9.2017, 14:37 Mirage Не отвлекайся на Биоваров. Придерживайся Ориджинов... 30.9.2017, 8:54
14 чел. читают эту тему (гостей: 14, скрытых пользователей: 0)
Пользователей: 0
|
|