📻
💰

JZQht7">

  1. 🚪

      🔵
      🍆🍂
      🦎
      💗
    • 🧠
    • 👌🧖
      🕟
      📥
      🔻
      ⛽🏄
    • 饥荒地图生成--海洋的形成(虚空转海洋)

      发布时间:2024-04-19 20:47:00  浏览量:3

      width:世界地图宽度 height:世界地图高度 data:是下面的各步骤所使用的参数,数据在\scripts\map\ocean_gen_config.lua文件里。

      以下坐标是指地皮坐标, 几近说明还有地图边缘没有加入执行,是从0到max-1

      shallowRadius:浅海半径,数值默认是4,没有就为10。

      几近遍历全图每个坐标位置的地皮,进行检查。 检查项目1,是陆地类型的地皮 检查项目2,这个坐标点半径周围是否存在一个海洋类型地皮或者不可通行地皮。 通过检查后,遍历以点为中心、以参数为半径的正方形区域,非地图边界且非陆地地皮,则替换为GROUND.OCEAN_COASTAL地皮(201号地皮,是浅海地皮)

      fillTile:替换地皮类型,默认是浅海地皮GROUND.OCEAN_COASTAL。 fillOffset:间距,每次填充与上次填充位置的距离。 fillDepth:递归最大次数。 landRadius:已废弃

      几近遍历全图,对每个是陆地坐标的点,朝该点的四向一格的位置进行fillGroundType函数(递归填充)。 该fillGroundType函数,会根据提供的坐标位置,进行判断最大递归次数非0、非地图边界外且非陆地地皮的情况。通过检查后,替换当前坐标地皮(浅海地皮),最大递归次数-1,朝四向fillOffset间距的位置进行递归。

      转换海水步骤2_单独转换海水步骤2转换海水步骤2_细节

      几近遍历全图,将全部不可通行地皮,进行一个simplexnoise2d函数后替换为GROUND.OCEAN_SWELL地皮(203号中海:蓝发白)、GROUND.OCEAN_HAZARDOUS(207号危海:浅灰,数量较少且零散分布)、GROUND.OCEAN_ROUGH(204号深海:最蓝,数量最多)

      提示:海洋布局在转换海水函数执行前,故地图上显示的其他非陆地的黑块就已经填充了海洋地皮,OCEAN_BRINEPOOL 205号是盐堆使用,OCEAN_WATERLOG 208号是水中木使用

      转换海水步骤3_单独转换海水步骤3

      几近遍历全图,非陆地地皮的位置,根据提供参数给底层,返回三张生成的一维表(包含2维地图大小的数据):el(盐堆、浅中深危海、无法通行),cm(盐堆),g(危海)表。地图坐标所在el表的数据不受任何影响,其他两张受位置影响。三表综合影响了,最终地图每个坐标位置的地皮。

      ① 每个位置的el数据,有70%概率执行②。执行:水中木海洋保持不变,盐堆海洋有cm有80%保持不变,其他变成浅海。 ②该位置的el数据,有0.4%概率执行③。执行:此位置设置为中海 ③该位置的g有70%概率设置为深海,其他为危海。

      将地图均分4块小正方形,越靠近小正方形中心部分,混合程度越大,对应的cm和g越趋近原来的值;越靠近小正方形边缘部分,混合程度越小,对应的cm和g值越趋近于0。

      下图有误。使用了水中木没有的地图生成方法,导致错误显示,实际上水中木区域是可能浅海、中海、深海、危海、水中木海洋地皮的混合区域,而非下图显示的全浅海地皮。

      几近遍历全图,每个海洋地皮的周围8格存在一个陆地且非盐堆海洋地皮,那么设置为WORLD_TILES.OCEAN_COASTAL_SHORE(202号海岸地皮)。

      遍历地图四条边,边上的每个位置,都计算出一个深度值,这个点开始朝地图内的深度值范围,设置为不可通行(虚空),且深度值+2范围内,非虚空的位置设置为深海。越是靠近地图边缘拐角处,深度值越大。

      OCEAN_WATERFALL_MAX_DIST全局参数影响深度值大小,设置为0,那么边缘将无不规则化。

      每次计算深度变化都在1范围内波动,即上一个点位置的深度值最多+1-1,且小于等于OCEAN_WATERFALL_MAX_DIST。

      转换海水步骤6转换海水仅执行步骤4及以后的结果

      关键词: 危海 地图 海洋

      🏐🥙

      💒🚃

      🈯🏖

      SB0MUV2o">

      📑🎗
      🌹
        🅿🖌
        1. 🤖🏃
        • 🎋🎵
          💄
        • 🖨
          🧡
        • 👜
          首页| 老年羽绒服| 中老年羽绒服| 关于我们| 友情链接| 网站地图| 设为首页| 加入收藏| 联系我们