炎龙骑士团吧 关注:8,528贴子:103,903

炎2 FDFIELD.DAT解析

只看楼主收藏回复

好久没来盐巴了,先给大家补上N+N天的问候~ 呵呵
这周末有些时间,又把经典的炎2拿出来看了看,分享一些结论给大家。

以4字节为单位,保存游戏33个地图的信息

每张地图信息由3部分数据组成:
第一部分为地图构成数据
第二部分为地图控制信息,包括我方出场人物上限,地图宝物信息,以及一些剧情信息(增援,NPC出场等等)
第三部分为人物出场位置信息

以第一关 孤岛 为例:

高亮部分表示第一关地图3部分数据各自的其实偏移量,由此可知第一关地图的3部分数据分别为:
第一部分: 0x196 ~ 0xA99 共0x904字节。
第二部分:0xA9A ~ 0xE42 共0x3A9字节。
第三部分:0xE43 ~ 0xF10 共0xCE字节。

下面以第一关为例具体解析各部分数据:




附一张全是海水的第一张地图。非PS哦~


回复
1楼2010-08-07 20:28
    只能推高手了... *拜倒*


    回复
    2楼2010-08-07 20:46
      • 27.37.32.*
      第一关原来叫孤岛啊?!
      PS:恭请PlayerLin专家出场....


      回复
      3楼2010-08-07 20:47
        补充对FDSHAP.DAT文件的解析


        回复
        4楼2010-08-07 21:02
          不来是不来,一来就是重量级的,服了!


          回复
          5楼2010-08-07 21:14
            看不懂。。。。。。。


            回复
            6楼2010-08-07 21:18
              對外傳沒興趣的人別看我的這篇了。 :P


              外傳的FDFIELD.VFS的內部資料結構和二代一致,只不過每張地圖的數據都被拆開來放。 MAPXX.COD 和 MAPXX.DAT,每張地圖都有成對的文件。

              MAPXX.COD = 第三部分(文件頭含有"COD"的字元)
              MAPXX.DAT = 第二部分

              第一部份的地圖構成 還 沒 找 到。
              (奇了,是我漏看什麼嗎?每個VFS都翻開來看就是沒發現類似的...
              MAP01的地圖大小是30x24,所以如果是用二代規則的話,那應該要搜尋1E001800,但搜尋所有VFS文件後,只在FIELD1.VFS中的0x0306F4找到這個字串。但看了一下後面的資料,似乎不太像是...比較像是某種index字串集?)

              FDSHAP.DAT裡面的東西可在FIELD2.VFS中的 ATTRXXX.DAT文件裡找到(文件頭有ATR字樣),但某些ATTRXXX.DAT的內容似乎"蠻特別的",所以我不確定這些DAT是不是都是代表地圖元件信息的。

              *滾走*


              回复
              7楼2010-08-07 21:31
                • 27.37.32.*
                炎外和二代应该是相通的吧?
                相信楼主的这些数据一出很快就有人做出相应的修改器了~
                到时势必掀起一股新的MOD风云。


                回复
                8楼2010-08-07 21:52
                  我也希望可以有工具出来,实现战场修改就有意思了。


                  回复
                  9楼2010-08-07 21:55
                    • 59.41.99.*
                    回个跑题帖......什么时候能够让2代英雄索尔打出能扣血的破龙击......


                    回复
                    10楼2010-08-07 23:14
                      强帖留名

                      这个研究对做MOD太有用了


                      回复
                      11楼2010-08-07 23:45
                        饿。。。。。。。我想问下。宝箱所在位置的信息在哪里??比如说,X,Y的信息??


                        回复
                        12楼2010-08-08 12:54
                          回复:12楼
                          宝箱的位置不是直接给出的,需要在第一部分地图的构成里面看。
                          地图构成数据格式是AA AA BB BB的形式, 前面的AA AA表示该位置的图形在FDSHAP.DAT文件里的序号。 BB BB一般为 00 00 ,表示什么都没有。若为数字,例如 01 00 ,则表示该位置的宝藏内容为 本地图宝物列表里第 1 个位置对应的东西。
                          如果想知道这个位置的坐标,那么需要先知道这个区块的次序。 以第一关地图为例, 在FDFIELD.DAT文件中 offset 0x626 的数据是 FA 00 01 00 ,表示这个位置的宝物是个草药。第一关地图构成信息的起始 offset 是 0x196, 加上前面4个字节的地图大小,变成 0x19A , 那么FA 00 01 00 的区块次序就是 (0x626-0x19A) / 4 = 0x123 = 291(dec) 那么该区块的x,y 坐标为
                          y = 291 / 24 ( 地图宽为24) = 12
                          x = 291 % 24 = 3

                          地图左上角坐标为(0,0),现在去(3,12) 的位置验证,发现该位置是个蓝色宝箱,里面为草药,验证正确。


                          回复
                          13楼2010-08-08 13:31
                            额。更正一下,那个宝箱里面是3000块钱。。。我一直错以为是草药来的。。。


                            回复
                            14楼2010-08-08 13:37
                              我不怎麼想研究那個地圖構成部分的原因就是13樓說的,座標什麼的通通都要自己去算orz

                              比看反彙編的結果還麻煩...||||||


                              回复
                              15楼2010-08-08 13:40
                                一直想做个炎2的地图编辑器。。终于今天开工了~
                                当然本人水平有限而且不知道游戏的真实程序,不能做出完全编辑游戏地图的工具,不过希望这个工具成型后可以实现下面几项功能:
                                     1. 在现有地形元件的基础上更改大地图。
                                     2. 可以更改敌军出场位置,等级以及兵种。
                                     3. 更改地图的宝物信息,以及消灭敌人后的掉落物品。
                                  
                                贴个进展图大家先睹为快·~

                                每天工作挺多的,所以只能慢慢来,不过我会努力把它完成,一有更新我会和大家及时分享~


                                回复
                                16楼2010-08-08 21:21
                                  只能再推樓上了,加油。 :)


                                  回复
                                  17楼2010-08-08 21:31
                                    楼上威武!


                                    回复
                                    18楼2010-08-08 21:31
                                      炎2的地图编辑器开工了!!!!我好幸福~~~~


                                      回复
                                      19楼2010-08-08 21:48
                                        期待ing..........


                                        回复
                                        20楼2010-08-09 13:33
                                          • 27.37.32.*
                                          突然想起炎龙1没有任何图片查看及提取工具。。。
                                          楼主想想办法。。。


                                          回复
                                          21楼2010-08-09 14:02
                                            一代有人有興趣嗎?...有的話才有做的意義。 :3


                                            回复
                                            22楼2010-08-09 14:24
                                              没任何技术的路过


                                              回复
                                              23楼2010-08-09 14:48
                                                开发进度报告1初步实现了使用现有的地图元件修改大地图,并将改过的地图打包回FDFIELD.DAT文件。放几张截图~~
                                                地图编辑器
                                                主要分为几大区域:左侧为地图列表。当选择一个地图后,编辑器下面将列出该地图使用到得所有地图元件。中间区域为地图编辑区,可以用鼠标在地图元件里选择一个地形并在地图编辑区上直接绘制。 右面的是所有人物的小图标,后续功能会用到。
                                                当鼠标在大地图区移动时。右下角的状态栏会显示当前鼠标位置在地图上的坐标,以及该位置的地形信息。 若有宝藏,也会给出宝藏的内容,包括隐藏。

                                                上面图中的是修改过的第一关地图。打包回FDFIELD.DAT后,进入游戏的效果如下:

                                                按F1后的缩略图:


                                                呵呵。 今天先到这,慢慢更新~


                                                回复
                                                24楼2010-08-09 21:06
                                                  好啊,真期待~!辛苦了~


                                                  回复
                                                  25楼2010-08-09 21:18
                                                    强帖帮顶!

                                                    继续加油!


                                                    回复
                                                    26楼2010-08-09 21:42
                                                      牛人!膜拜!
                                                      朕以为,这非常适合做同人嗷嗷嗷!!
                                                      小黑,小黑何在!?还不快来贿赂拐骗牛人~~


                                                      回复
                                                      27楼2010-08-09 21:50
                                                        27楼回复: 

                                                        我不是在25楼已经发过言了吗....


                                                        回复
                                                        28楼2010-08-09 22:02
                                                          我也顶一下。
                                                          地图编辑,除了替换原单元数据外,
                                                          理应包括编辑地图的大小及地图上各单元的数量才对~~


                                                          回复
                                                          29楼2010-08-09 22:06
                                                            如果可以的话,加入调整人物阵营的修改会更好.
                                                            我方,敌人,NPC


                                                            回复
                                                            30楼2010-08-09 22:15