Mirserver

MapInfo.txt

地图基础信息配置文件,控制地图入口名、地图资源、地图名称、地图参数和传送关系。

地图定义行

地图定义行的常见结构如下:

[地图入口名|地图资源 地图名称] 参数

例如:

[MIMA|Q004 密码验证地图] NOSHOPPING NORECOVERINGSTONE SAFE FIGHT

这一行可以拆成下面几部分理解:

部分说明
地图入口名当前地图在 MapInfo.txt 中使用的入口名,可用于区分不同地图入口
地图资源实际使用的地图资源名、地图编号或地图代码
地图名称游戏内显示或说明用的地图名称
参数这一张地图启用的规则、限制和功能参数

如果不需要单独写地图别名,也可以直接写成:

[地图资源 地图名称] 参数

例如:

[0 盟重省] KILLFUNC(66) STALL

这类写法表示当前行直接使用地图资源作为入口,没有额外定义单独的入口名。

参数索引

使用时可先记住几点:

  • 地图参数大小写通常不敏感,但维护时建议统一按大写书写
  • 如果你的 MapInfo.txt 中出现这里未收录的参数,应以当前项目实际可用参数为准
  • 历史资料中可能出现 Fight2、KillFUNC、SensitiveCreature 这类混合大小写写法,文档中统一按大写参数名整理
参数常见写法说明
DARKDARK地图黑暗模式;如果引擎设置里启用了免蜡,这个参数通常不会生效
SAFESAFE地图安全区域
FIGHTFIGHT3地图战斗区域;可写 FIGHT3 等后缀数字,常见于允许复活次数的行会战地图
FIGHT2FIGHT2杀人不犯法,但会爆装备
MINEMINE地图可以挖矿
STALLSTALL地图允许摆摊
NEEDHOLENEEDHOLE进入地图需要洞口
MUSICMUSIC(123)进入本地图播放指定音乐;通常对应客户端 MUSIC/123.mp3
CHECKQUESTCHECKQUEST(Q001)进入地图执行任务脚本;通常会触发 MapQuest_Def 下对应脚本,传送进入时一般不触发
INCHPINCHP(1/10)进入本地图后自动加 HP
DECHPDECHP(1/10)进入本地图后自动减 HP
PKWINLEVELPKWINLEVEL(1)PK 击杀获得等级奖励
PKLOSTLEVELPKLOSTLEVEL(1)PK 死亡掉等级
PKWINEXPPKWINEXP(1000)PK 击杀获得经验
PKLOSTEXPPKLOSTEXP(1000)PK 死亡掉经验
EXPRATEEXPRATE(200)地图经验倍数,200 代表 2 倍
NEEDSET_ONNEEDSET_ON(001)进入地图需要指定标志为开启;传送进入时通常不检测
NEEDSET_OFFNEEDSET_OFF(001)进入地图需要指定标志为关闭;传送进入时通常不检测
INCGAMEGOLDINCGAMEGOLD(1/10)进入本地图后自动加游戏币(元宝);括号内为「间隔秒数/每次点数」
DECGAMEGOLDDECGAMEGOLD(1/10)进入本地图后自动减游戏币(元宝);括号内为「间隔秒数/每次点数」
INCGAMEPOINTINCGAMEPOINT(1/10)进入本地图后自动加泡点;括号内为「间隔秒数/每次点数」
DECGAMEPOINTDECGAMEPOINT(1/10)进入本地图后自动减泡点;括号内为「间隔秒数/每次点数」
COLLECTEXPCOLLECTEXP(AA/BB/CC/DD/EE/F1~F4/G1~G4)天地结晶地图参数,共 11 个位置参数;通常还要配合功能脚本使用
RUNMONRUNMON允许地图穿怪
RUNHUMANRUNHUMAN允许地图穿人
NOGUILDRECALLNOGUILDRECALL禁止行会召唤
NODEARRECALLNODEARRECALL禁止夫妻召唤
NOMASTERRECALLNOMASTERRECALL禁止师徒召唤
NORECALLNORECALL禁止记忆召唤
NORECALLHERONORECALLHERO禁止召唤英雄;切换地图或传送时会自动收回英雄
NOPOSITIONMOVENOPOSITIONMOVE禁止定坐标移动
NORANDOMMOVENORANDOMMOVE禁止随机传送
APPRAPPR禁止师徒对换地图
DEARDEAR禁止夫妻对换地图
EXCHANGEMAPEXCHANGEMAP不限制直接对换地图
NORECONNECTNORECONNECT(0159)重连时切换地图
NOTALLOWUSEITEMSNOTALLOWUSEITEMS(回城卷|强效金创药)禁止使用物品列表
NOTALLOWUSEMAGICNOTALLOWUSEMAGIC(火墙|彻地钉)禁止使用技能列表
NODRUGNODRUG禁止地图内吃药
NOTHROWITEMNOTHROWITEM禁止丢装备
NODEALNODEAL禁止交易
NOSHOPPINGNOSHOPPING禁止商铺购物和赠送
NORECOVERINGSTONENORECOVERINGSTONE魔血石失效
NOMANNOMONNOMANNOMON智能刷怪;无人不刷,节省资源
KILLFUNCKILLFUNC(1)地图杀人或杀怪触发编号;通常联动 QMapEvent-0.txt 中对应编号的触发段
HERONOATTACKHUMANHERONOATTACKHUMAN英雄不攻击人物,包含随从
DIGITEMDIGITEM(50)地图允许挖宝并设置密集度;0 表示不加宝藏,常见建议范围为 1~200
SECRETSECRET(31|固定名字|54|78|29|3)地图浑水摸鱼模式;第 1 参数是功能位组合值,不是固定只能写 31
OPTIOPTI地图内存优化参数
SENSITIVECREATURESENSITIVECREATURE怪物感知更敏感;人物或宠物进入怪物视野后,怪物反应通常更快
NOHEROGUARDNOHEROGUARD禁止英雄守护
QUIZQUIZ禁止黄字喊话
NOSWITCHATTACKMODENOSWITCHATTACKMODE禁止切换攻击模式
THUNDERTHUNDER(100)雷电,单体攻击
GREATTHUNDERGREATTHUNDER(100)大雷电,群体攻击
LAVALAVA(100)喷岩浆,群体攻击
SPURTSPURT(100)喷气,群体攻击
  • 看到没有括号的关键字时,优先按开关类参数理解,例如 SAFE、STALL、NODRUG
  • 看到圆括号时,优先确认括号内是单值、路径、编号,还是列表
  • 看到 | 分隔内容时,通常表示同一参数下的多项配置
  • 看到像 FIGHT3 这种写法时,说明该参数本身允许带后缀值,不一定总是写成 参数名(值)

SECRET(...) 通常用于把地图切换成浑水摸鱼模式。

常见写法如下:

SECRET(31|固定名字|54|78|29|3)

这里的 31 只是示例值,表示把 01、02、04、08、16 五个功能位同时开启,并不是这个参数只能写 31。

这组参数通常可以按下面方式理解:

位置说明
第 1 参数控制功能位,可按位相加
第 2 参数固定显示名字
第 3 参数衣服外观
第 4 参数武器外观
第 5 参数衣服外观特效
第 6 参数武器外观特效

第 1 参数常见功能位包括:

  • 01:禁止说话
  • 02:禁止名字变色
  • 04:禁止看对方装备
  • 08:统一名字
  • 16:统一装备外观

如果需要同时启用多个功能,可直接把对应数字相加。例如 02 + 04 + 16 = 22,表示同时禁止名字变色、禁止查看对方装备,并统一装备外观。

如果只想统一名字,不改装备外观,可写成下面这样:

SECRET(8|活动使者|0|0|0|0)

KILLFUNC(...) 一般不仅是一个地图参数,还会联动地图事件脚本。

常见写法如下:

[0 盟重省] KILLFUNC(1)

这里的 1 一般表示触发编号。地图里发生击杀事件后,引擎会按这个编号去找对应事件段。

常见理解方式是:

  • 地图内杀人时,触发 QMapEvent-0.txt 中的 [@KillPlay数字]
  • 地图内杀怪时,触发 QMapEvent-0.txt 中的 [@KillPlayMon数字]

按 KILLFUNC(1) 来看,常见对应关系通常可以理解成:

  • 杀人时,检查 [@KillPlay1]
  • 杀怪时,检查 [@KillPlayMon1]

这类配置常用于下面几种玩法:

  • 地图内击杀后弹公告
  • 统计击杀数量
  • 触发积分、奖励或掉落逻辑
  • 配合活动地图做胜负判断

排查这类问题时,建议按这个顺序检查:

  • MapInfo.txt 里是否真的写了 KILLFUNC(编号)
  • QMapEvent-0.txt 里是否存在对应编号的事件段
  • 事件段里的脚本命令是否能在当前地图玩法下正常执行

如果后续需要继续做地图事件、地图杀人或杀怪联动,应结合 QMapEvent-0.txt 一起检查。

COLLECTEXP(...) 一般用于开启天地结晶类地图规则,参数格式为 COLLECTEXP(AA/BB/CC/DD/EE/F1~F4/G1~G4),共 11 个位置参数。示例:

[0122 皇宫] COLLECTEXP(8000/3200/100/3/10/600000|1200000|2400000|4800000/240000|480000|960000|1280000)

这类参数通常不会只靠 MapInfo.txt 单独生效,后续还要继续检查配套功能脚本是否已经写好:天地结晶的释放触发与提取界面见 功能脚本 QFunction-0,收尾命令见 恢复天地结晶初始状态。

传送关系行

除了地图定义行,MapInfo.txt 还经常直接写地图之间的传送关系。

常见结构如下:

源地图 X,Y -> 目标地图 X,Y

例如:

0    346,186  -> 0122    11,41
0122 11,42    -> 0       346,187

这类配置表示:

  • 玩家从地图 0 的 346,186 进入后,会被传送到地图 0122 的 11,41
  • 玩家从地图 0122 的 11,42 进入后,会被传送回地图 0 的 346,187

也就是说,这一部分主要负责地图入口、楼层切换、房间切换和双向传送点配置。

相关阅读