doom2d.org

Главная база плоских морпехов
It is currently 30 Sep 2020, 11:39

All times are UTC + 3 hours




Post new topic Reply to topic  [ 77 posts ]  Go to page Previous  1, 2, 3, 4  Next

Нужен ли нам такой remake?
Poll ended at 05 Feb 2013, 00:45
Да, готов содействовать (указать в комментариях) 63%  63%  [ 5 ]
Да, непременно буду главной аудиторией этого проекта 25%  25%  [ 2 ]
Думаю, что нет. 13%  13%  [ 1 ]
Total votes : 8
Author Message
PostPosted: 16 Jan 2013, 13:49 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
А зачем вообще музыку трогать? Она и так офигенна.)

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 17 Jan 2013, 02:43 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
Музыку трогать - я имею ввиду поменять инструменты - но оставить её прежней нотка в нотку.

По поводу уровней - нужен хелп!
Разбирал формат WAD'а, доразбирался до следующего:
Выцепил таблицу с элементами (оффсет-размер-имя).

Конкретно элемент (ячейка таблицы) пустого уровня (WAD лежит в аттаче к посту), созданного в редакторе, выглядит следующим образом:
Code:
44 6F 6F 6D 32 44 1A 00 02 00 07 00 00 00 08 00
00 00 00 00 00 00 00 00 00 00 08 00 00 00 02 00
00 00 01 00 01 00 00 00 00 00 00 00 02 00 01 00
04 00 00 00 FF 10 27 00 03 00 01 00 04 00 00 00
FF 10 27 00 04 00 01 00 04 00 00 00 FF 10 27 00
05 00 00 00 00 00 00 00 09 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00

Осталось только разобраться, что в нём есть что.
Сначала идёт подпись с версией:
Doom2D\x1A\x002
Code:
44 6F 6F 6D 32 44 1A 00 02 00

Потом идут блоки данных в следующем виде:
Тип блока - short (2 байта)
Подтип - short (2 байта) - всегда равен 00 00
Размер блока - int (4 байта)
Собственно данные блока - struct (по размеру)

Need HELP, люди =)


Attachments:
NULL.WAD [132 Bytes]
Downloaded 163 times

_________________
Doom 2D Remake (Android)
Top
 Profile  
 
PostPosted: 17 Jan 2013, 03:39 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
Зачем ты одновременно разбираешь формат WAD'а и формат карты? Так же и запутаться недолго.
По теме - можешь посмотреть исходники конвертера карт LMP2MAP (Doom 2D > Doom2D:F). Найти их можно в архиве с исходниками Doom2D:F в одноимённой папке.

И да: WAD - это не карта, это ресурсный файл без сжатия. В котором, в свою очередь, хранится карта.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 17 Jan 2013, 13:14 
Offline
Приколист
User avatar

Joined: 10 May 2010, 18:36
Posts: 1369
Location: Киев
все оставил нотка в нотку, но поменял инструменты, вот что вышло


Attachments:
Prostota0.mid [9.5 KiB]
Downloaded 190 times

_________________
Image
Total Destruction Project --> [ Mod --> Resources --> Campaign --> DM-Maps ]
Top
 Profile  
 
PostPosted: 17 Jan 2013, 22:20 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
То, что WAD - это не карта, а всего-лишь контейнер - это уж и ежу понятно =)
Но разобрать его еще раз всё таки стоит. Как минимум - с ним орудовать.
Ну и потом - нужно ж знать где что расположено, чтобы зная оффсет и размер можно было забрать данные (как сделал с картой - это жо только часть из WAD'а)
За ссылку на сырцы d2d:f спасибо, а точнее за наводку где копать.

По поводу музыки - нет смысла перебрасывать в mid формат и переназначать инструменты. Синтезатор звуков у всех девайсов разный. Даже и в пределах ОС синтез звука может проводится через разные либы со своими звуковыми шрифтами.
Соответственно нужно это дело либо загонять в волну (для начала тот же WAV). Ну а вообще это стоит делать в средах для написания музыки, предназначенных для нужного результата (минимум и то - нежелательный - FL Studio).
Советую использовать:
Cubase с правильными VSTi, Reason, Apple Logic.
Данный софт также необходимо изучить вдоль и поперек. По своему вкусу - люблю Propellerhead Reason, чего и Вам советую =)

_________________
Doom 2D Remake (Android)


Top
 Profile  
 
PostPosted: 17 Jan 2013, 23:13 
Offline
Приколист

Joined: 18 Oct 2009, 12:00
Posts: 1243
Location: Подмосковье
Музыку не трожьте, ради б-га. Вон она, в .xm лежит. И в ogg.

Code:
    /**************************************************************************\
    *                                                                          *
    *  Форматы карт Doom'а 2D                                       Версия 2   *
    *                                                                          *
    *  Prikol Software                                           10.VII.1996   *
    *                                                                          *
    *  Разрешается свободно распространять этот файл, при условии сохранения   *
    *  ссылки на Prikol Software, версии и даты выпуска файла.                 *
    *                                                                          *
    *  Этот include-файл расчитан на WATCOM C 10.0 и DOS4GW                    *
    *  Вы можете переделать его на любой другой язык/компилятор, но сохраните  *
    *  этот файл (если собираетесь его распространять), а в своем укажите,     *
    *  что он изменен (переделан).                                             *
    *                                                                          *
    \**************************************************************************/
     
    #pragma pack(1)
     
    /* Старый формат - версия 1.04 alpha (и раньше)
     
      названия текстур (old_wall_t)
        кончается пустой строкой (old_wall_t.n[0]==0)
     
      фон           - массив 100x100 байт - номера текстур
     
      тип стенок    - массив 100x100 байт:
        0 - пусто
        1 - стена
        2 - закрытая дверь
        3 - открытая дверь
        4 - ступенька
     
      передний план - массив 100x100 байт - номера текстур
     
      вещи, монстры и др. (old_thing_t)
        кончается нулевым типом (old_thing_t.t==0)
     
      переключатели (old_switch_t)
        кончается нулевым типом (old_switch_t.t==0)
     
    */
     
    typedef struct{
      char n[8];                    // название текстуры
      char t;                       // тип: 0-сплошная 1-"решётка"
    }old_wall_t;
     
    typedef struct{
      short x,y;                    // координаты
      short t;                      // тип
      unsigned short f;             // флаги
    }old_thing_t;
     
    typedef struct{
      unsigned char x,y;            // координаты/8
      unsigned char t;              // тип
      unsigned char tm;             // должно быть 0
      unsigned char a,b;            // обычно - координаты/8 двери
      unsigned short c;             // не используется (вроде бы)
    }old_switch_t;
     
    /* Новый формат - начиная с версии 1.05 alpha
     
      заголовок карты (map_header_t)
     
      блоки (map_block_t)
        кончается блоком MB_END (map_block_t.t==MB_END)
     
    */
     
    typedef struct{
      char id[8];                   // "подпись" - "Doom2D\x1A"
      short ver;                    // версия карты
    }map_header_t;
     
    typedef struct{
      short t;                      // тип блока
      short st;                     // подтип (метод упаковки, например)
                                    // если не используется, то должен быть 0
                                    // (для будущей совместимости)
      int sz;                       // размер (сколько байт после этой структуры)
    }map_block_t;
     
    enum{
      MB_COMMENT=-1,MB_END=0,
      MB_WALLNAMES,MB_BACK,MB_WTYPE,MB_FRONT,MB_THING,MB_SWITCH,
      MB_MUSIC,MB_SKY,
      MB_SWITCH2,
      MB__UNKNOWN
    };
     
    /* Версия 0  (Doom2D версии 1.05 alpha)
     
      MB_COMMENT - комментарий
     
      MB_WALLNAMES - названия текстур (см. старую версию)
        количество - по размеру блока
     
      MB_BACK,MB_WTYPE,MB_FRONT - фон,тип,передний план (см. старую версию)
        подтип 0 - без упаковки (как в старой версии)
     
      MB_THING - вещи,монстры и др. (см. старую версию)
        количество - по размеру блока
     
      MB_SWITCH - переключатели (см. старую версию)
        количество - по размеру блока
     
    */
     
    /* Версия 1  (Doom2D версии 1.06 alpha)
     
      MB_WALLNAMES
        добавлены псевдо-текстуры _WATER_*
          где * это 0=вода,1=кислота,2=кровь
     
      MB_WTYPE
        добавлен новый тип 5 - вода
     
      MB_MUSIC - новый блок - название музыки (8 байт)
     
      MB_SKY - новый блок - тип неба (2 байта - short)
        1 = облака
        2 = город
        3 = ад
     
    */
     
    #define SW_PL_PRESS             1
    #define SW_MN_PRESS             2
    #define SW_PL_NEAR              4
    #define SW_MN_NEAR              8
    #define SW_KEY_R                16
    #define SW_KEY_G                32
    #define SW_KEY_B                64
     
    typedef struct{
      unsigned char x,y;            // координаты/8
      unsigned char t;              // тип
      unsigned char tm;             // должно быть 0
      unsigned char a,b;            // обычно - координаты/8 двери
      unsigned short c;             // не используется (вроде бы)
      unsigned char f;              // флаги
    }switch2_t;
     
    /* Версия 2  (Doom2D версии 1.17 alpha)
     
      блок MB_SWITCH заменен на MB_SWITCH2 (см. switch2_t)
     
    */
     
    #define LAST_MAP_VER 2  // Самая последняя версия карты
     
    #pragma pack()
     
    /*  КОНЕЦ  */


_________________
aka PrimuS


Top
 Profile  
 
PostPosted: 17 Jan 2013, 23:50 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
Ладно) оставим оставим. просто битрейт повысим)

_________________
Doom 2D Remake (Android)


Top
 Profile  
 
PostPosted: 17 Jan 2013, 23:56 
Offline
Приколист
User avatar

Joined: 17 Oct 2009, 21:30
Posts: 1127
Location: оттуда
А когда примерно намечается первая рассылка бета версий?)

И может где-нибудь их собирать в порядке возрастания? Типо хронология типо прикольно :о

_________________
Image


Top
 Profile  
 
PostPosted: 18 Jan 2013, 00:01 
Offline
Приколист
User avatar

Joined: 10 May 2010, 18:36
Posts: 1369
Location: Киев
да еще альфы даже не было

_________________
Image
Total Destruction Project --> [ Mod --> Resources --> Campaign --> DM-Maps ]


Top
 Profile  
 
PostPosted: 18 Jan 2013, 09:51 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
NeParij wrote:
Ладно) оставим оставим. просто битрейт повысим)
Как ты собираешься повысить битрейт у трекерной музыки? O_o
Чесслово, что-что, а музыку трогать действительно не надо.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 18 Jan 2013, 14:20 
Offline
Приколист
User avatar

Joined: 17 Oct 2009, 21:30
Posts: 1127
Location: оттуда
swoy45 wrote:
да еще альфы даже не было

А это что? q-p
http://i.iddqd.ru/viewtopic.php?t=6937

_________________
Image


Top
 Profile  
 
PostPosted: 18 Jan 2013, 14:38 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
Да, Немезис. Будь добр, поставь там в названии темы пробел в названии в "Doom2D".
Кстати говоря, здесь тоже бы поправить не помешало. Но это уже к самому разработчику.)

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 18 Jan 2013, 16:16 
Offline
Приколист
User avatar

Joined: 17 Oct 2009, 21:30
Posts: 1127
Location: оттуда
Черный Думер wrote:
Да, Немезис. Будь добр, поставь там в названии темы пробел в названии в "Doom2D".
Кстати говоря, здесь тоже бы поправить не помешало. Но это уже к самому разработчику.)

Сделал.
Грамарнаци

P.S. Тэг strike не пашет если внутри него есть ":"

_________________
Image


Top
 Profile  
 
PostPosted: 18 Jan 2013, 17:29 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
Немезис, благодарю.
Prostovitalik wrote:
Музыку не трожьте, ради б-га. Вон она, в .xm лежит. И в ogg.
Согласен, но вроде как Ар когда-то сообщал, что на сайте некоторые XM'ы битые. Поэтому лучше использовать те, что я когда-то самолично проверял для D2DMP:
Attachment:
d2d_music.7z [554.71 KiB]
Downloaded 144 times

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 19 Jan 2013, 19:03 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
С фронта разработки:
сделал ретрансляцию имен с cp866 на utf-8 (так как всё завязано на unicode у меня)
Разборка WAD'а:
Разобрал таблицу по элементам.
И, самое главное, заложен первый камень в разборку ячейки уровня. Разобрал по элементам.
К сожалению, элемент MB_WTYPE (стены, закр.дверь итд...) не документирован нигде. То есть отсутствует какая-либо спецификация. Да и комментов ни в одном исходнике нет по поводу MB_WTYPE (точнее есть но к старой версии до 1.0 даже - естественно не подходит).
Так что спецификацию по разборке WAD'а буду тоже писать, и к завершению приложу тоже))

MB_WTYPE:
идёт по блокам. Блоки бывают двух видов.
1) Одиночный элемент
2) Серия элементов
Разберем каждый из них:
1) Одиночный элемент: занимает 1 байт, соответствующий типу блока. Создаёт один блок на текущей позиции записи.
2) Серия элементов: занимает 4 байта и имеет след. вид:
старт секции (1 байт), всегда равен FF
длина секции (2 байта, short) - сколько раз поставить блок - младший байт первым (по дефолту)
тип блока (1 байт)

Используя оба типа элементов привожу пример:
Code:
01 00 01 00 FF 0A 00 02

создаст : стенка, пустой блок, стенка, пустой блок, 10 закр.дверей.

_________________
Doom 2D Remake (Android)


Top
 Profile  
 
PostPosted: 19 Jan 2013, 19:24 
Offline
Приколист

Joined: 18 Oct 2009, 12:00
Posts: 1243
Location: Подмосковье
D2D
map.h
things.h

lmp2map
d2ddef.pas
map.pas
utils.pas

_________________
aka PrimuS


Top
 Profile  
 
PostPosted: 19 Jan 2013, 19:50 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
Prostovitalik, спасибо, но это я уже всё изучил) некоторые вещи проще самому написать, некторые именно там и подглядываю.

Image


я к тому что о многих вещах не написано (как новый формат некоторых элементов карты) и, либо приходится разбирать чужой код, либо искать решение самому (этот вариант, если честно мне больше нравиться)

_________________
Doom 2D Remake (Android)


Top
 Profile  
 
PostPosted: 20 Jan 2013, 01:56 
Offline
User avatar

Joined: 14 Jan 2013, 23:58
Posts: 17
Добавил пробел в название по просьбам трудящихся =)
Дорогие друзья, я убираю таски по разбору WAD'а и переделке музыки (оставляем старую - так лучше будет - я согласен с Вами).
НО. добавляем новый таск.
В связи с тем, что мне зачастую некогда во всём разбираться, а также в связи с тем, что все, кто хоть немного дружит с кодом могут разобраться в такой мелочи.
Народ, найдите (хоть и искать особо не придётся, всё в одном файле из исходников) все статы для монстров и оружия.

Интересуют след. данные в след. виде:
Блок 1: создания:
1) имя
2) кол-во жизни
3) скорость передвижения
4) скорость регенерации дальней атаки
5) скорость регенерации ближней атаки
6) урон дальней атаки
7) урон ближней атаки
8) болевой порог (сколько хелсов нужно снять созданию, чтобы он не мог атаковать)

Блок 2. Оружие:
1) скорость перезаряда (через сколько вылетит след. снаряд)
2) кол-во снарядов за один выстрел
3) урон от одного снаряда

Пожалуйста, не направляйте меня на исходники D2D и D2D:F. Я всё это видел. Я просто пытаюсь ускорить процесс разработки с Вашей же помощью. Потратьте полчаса Вашего времени - это сильно сэкономит моё время, позволяя писать остальные классы и модули не отвлекаясь на кипу других заданий.
Я надеюсь, что Вы проявите свои позицию, поможете в этом деле и Ваши имена будут увековечены в тайтлах =)))

Также это СИЛЬНО поможет выпустить альфу и дать Вам насладиться первобытным геймплеем данного проекта.

With Great wishes, Nikolay.

_________________
Doom 2D Remake (Android)


Top
 Profile  
 
PostPosted: 20 Jan 2013, 04:18 
Offline
Приколист
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 5914
Location: Владивосток
Ну про конкретно указанные тобой значения я не знаю, но в сорцах когда-то нашёл вот такую вот табличку с описанием параметров монстров:
Code:
//rad  ht  life  pain  rv   jv  slop min_pn
    0,  0,    0,    0,  0,   0,    0,    0,   // none
   15, 28,   60,   20,  7,  10,    0,   10,   // demon
   10, 28,   25,   15,  3,  10,   30,    0,   // imp
   10, 28,   15,   10,  3,  10,   30,    0,   // zomby
   10, 28,   20,   10,  3,  10,   30,    0,   // sergeant
   20, 55,  500,   70,  5,  10,    0,   50,   // cyberdemon
   12, 28,   60,   20,  3,  10,   30,   10,   // chaingunner
   12, 32,  150,   40,  3,  10,    0,   30,   // baron of hell
   12, 32,   75,   40,  3,  10,    0,   30,   // hell knight
   15, 28,  100,   10,  4,   4,    0,    0,   // cacodemon
    8, 18,   60,   10,  4,   4,    0,    0,   // lost soul
   15, 28,  100,   10,  4,   4,    0,    0,   // pain elemental
   64, 50,  500,   70,  4,  10,    0,   50,   // spider mastermind
   25, 27,  150,   20,  4,  10,    0,    0,   // arachnotron
   18, 30,  200,   40,  3,   7,    0,   20,   // mancubus
   17, 36,  200,   40,  6,  11,    0,   20,   // revenant
   17, 36,  150,   30,  7,  12,    0,   10,   // archvile
    5,  5,   35,   20, 14,   6,    0,   10,   // fish
    5, 17,   20,    0,  7,   6,    0,    0,   // barrel
   17, 38,   20,   40,  3,   6,    0,   20,   // robot
    8, 26,  400,   70,  8,  10,   30,   50    // man

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 20 Jan 2013, 17:59 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 6561
Location: \\NEGRO
Ох нифига себе!
Кулаки здорово смотрятся. Наконец-то вижу их в работе!
А вверх-вниз думер не стреляет?

Я совершенно не разбираюсь в программировании, но могу нарисовать любую потребную графику.
Welcome here!

P.S. Как встроить видео в пост:
Code:
[flash=420,315]http://www.youtube.com/v/xT798fzj6VU[/flash]

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 77 posts ]  Go to page Previous  1, 2, 3, 4  Next

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
doom2d.org, since 2007