搜索

[技术资料] 完美国际 地图制作

[复制链接]
查看: 166|回复: 3

34

主题

171

帖子

13

金币

正式会员

Rank: 11Rank: 11

发表于 2023-12-9 12:07:09 | 显示全部楼层 |阅读模式
办理VIP,免金币下载游戏!
    地图文件制作篇: gs配置(这里以a33举例)
    首先 我们要确定一下新地图区域基本有2种模式无非是world_servers和instance_servers  很明显世界服务器类别是所有人都可以共同进入 instance_servers 服务器是团队副本  所以在制作新地图的之前要确定好大类别  新资料片为world_servers 所以在gs.conf的一开始[General]的world_servers类别内添加a32;a33;

    确定完大类别 我们仿照类似的世界副本
    [World_is33]  世界副本
    index    =    73  顺序根据is31推断
    tag    =    133  地图ID
    根据客户端文件确定
    base_path    =    a33/  路径地址
    limit    =    allow-root;  限制

    grid    =    {16060,50,-2000.0,-2000.0}
    base_region    =    {-1024.0,-1024.0}    ,    {1024024.0}   
    local_region    =    {-1024.0,-1024.0}    ,    {1024024.0}              
    基本区域 根据客户端的p.sev 确定 只要能覆盖p.sev里所有坐标就行

    ;player_capacity    =    8192
    ;npc_count    =    20000
    ;matter_count    =    163840


    ;副本里特殊player逻辑,通过制定player逻辑的三个部分的cid来完成
    ;这几个值得设定非常敏感,不能随意设定,与程序代码耦合性非常强
    cid    =    0,23

    [Terrain_is33]
    szMapPath    =    map   
    nAreaWidth    =    512
    nAreaHeight    =    512
    nNumAreas    =    4  地图数量根据客户端map文件确定
    nNumCols    =    2  根据客户端确定
    nNumRows    =    2根据客户端确定
    ★还有一点很重要 nNumeClos*nNumRows=nNumAreas
    vGridSize    =    2.0f
    vHeightMin    =    0.0f
    vHeightMax    =    800.0f

    [MsgReceiverTCP_is33]
    type    =    tcp
    listen_addr    =    INSTANCE33:11943  根据is31推断
    so_sndbuf    =    16384
    so_rcvbuf    =    16384
    tcp_nodelay    =    0
    listen_backlog    =    10

    [MsgReceiverUNIX_is33]
    type    =    unix
    listen_addr    =    /tmp/gssock_is33
    so_sndbuf    =    16384
    so_rcvbuf    =    16384
    listen_backlog    =    10

    这时肯定有人要问根据客户端文件究竟是哪些文件  不急  等我慢慢说来
    地图数量请查看客户端map文件  比如a33里你会发现一共a33_4.t2bk
    最大数量到4  那就能确定地图数量为4
    我们用pck文件解开 config.pck  找到一个叫instance.txt的文件

    [World_is33]
    index       =     73
    tag   =     133
    base_path       =     a33/
    limit =     allow-root;

    grid  =     {80,80,50,-2000.0,-2000.0}
    base_region    =     {-1024.0,-1024.0}  ,      {1024024.0}
    local_region    =     {-1024.0,-1024.0}  ,      {1024024.0}

    ;player_capacity     =     8192
    ;npc_count     =     20000
    ;matter_count =     163840


    ;副本里特殊player逻辑,通过制定player逻辑的三个部分的cid来完成
    ;这几个值得设定非常敏感,不能随意设定,与程序代码耦合性非常强
    cid   =     0,23

    [Terrain_is33]
    szMapPath      =     map
    nAreaWidth     =     512
    nAreaHeight    =     512
    nNumAreas    =     4
    nNumCols      =     2
    nNumRows    =     2
    vGridSize       =     2.0f
    vHeightMin     =     0.0f
    vHeightMax    =     800.0f

    [MsgReceiverTCP_is33]
    type =     tcp
    listen_addr      =     INSTANCE33:11943
    so_sndbuf      =     16384
    so_rcvbuf       =     16384
    tcp_nodelay    =     0
    listen_backlog =     10

    [MsgReceiverUNIX_is33]
    type =     unix
    listen_addr      =     /tmp/gssock_is33
    so_sndbuf      =     16384
    so_rcvbuf       =     16384
    listen_backlog =     10

    众所周知 gs启动项配好后 就进行测试 看看能不能顺利通过 一般大类别分辨错误的话基本log里会出提示这个不用担心

    我们首先来看下地图文件的组成 airmap  map  movemap watermap
    npcgen sev文件  方法还是一样根据类似副本决定比如a33 我们可以取a26 作为模版  说句实话  对于airmap movemap我没有过多的研究 只是根据客户端的area的数量决定其文件数量
    对于map里的文件我也没有更好的办法唯一的办法就是替换法  使用其他副本的.hmap文件替换  有人这办法真笨确实但没更好的办法 地图数量需要几个 就复制几个.hmap 按顺序作为1.hmap 2.hmap== .conf文件里的一些宽度啥的配置参照想关副本和gs
    之前有人传了个工具给我  修改地图高度文件的软件  结果我研究时中了彩那东西加壳软件很牛比 感染我所有exe文件后来就放弃研究高度数据了;这时候肯定有人会说了  这么简单还用的着你说明?呵呵别忙下定论
    下面给你们说个很有趣的测试:
    对于地图.hmap文件我做了个很有趣的测试  结果不影响正常运行
    这个测试就是我任意取一个.hmap文件  然后用UE打开了.hmap文件  全部删空  此时的.hmao文件字节为0  然后我把所有0字节的.hmap替换掉原先的.hmap文件结果运行正常  进入副本跟原先的.hmap效果一样
    额 此时说明了什么?大家自己想

    测试二:我后来又做了一个实验
    对于服务端东西的研究 我一直主张从客户端着手 所以我研究了下客户端
    我有了个大胆的想法  于是我把data文件所有的后缀名全改为了.hmap文件复制到了服务端的map下  启动参数  额  一切正常效果一样

声明

1.本站资源来源于网络,本站不研究无任何技术支持!仅供自行学习交流之用,请勿用于商业用途!

2.一切网民在进入热血侠主页及各层页面时已经仔细看过并完全同意本站站务区内发布的免责声明

3.本站内容如若侵犯到您的权益,请通过本站提供的联系方式联系我们,我们会尽快处理!

0

主题

135

帖子

197

金币

正式会员

Rank: 11Rank: 11

发表于 2023-12-9 18:32:42 | 显示全部楼层
大佬6666666666

0

主题

66

帖子

-3

金币

正式会员

Rank: 11Rank: 11

发表于 2023-12-9 21:09:50 | 显示全部楼层
666666666666

0

主题

2895

帖子

5705

金币

荣誉会员

Rank: 111Rank: 111Rank: 111

发表于 2024-4-13 08:31:00 | 显示全部楼层
谢谢分享,非常感谢,辛苦了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热血侠简介

热血侠网游单机论坛致力于为网游单机版游戏玩家提供一个网络游戏改单机版一键端下载和游戏交流分享的平台,打造全网最好的网游单机论坛,提供最全最好玩的网游单机版一键端下载。

Copyright  ©2015-2018  热血侠网游单机论坛  Powered by Discuz!  

快速回复 返回顶部 返回列表