一、核心引擎目录 MirServer
服务端根目录下的 MirServer 文件夹是主体,其结构决定了服务器运行的所有模块。
Mir200 核心程序库:此目录包含运行主程序。
• M2Server.exe:服务端核心引擎,控制游戏所有逻辑。运行时在任务管理器显示为M2Server进程。
• !Setup.txt:引擎配置文件,定义游戏基本参数(经验、爆率、物品规则)。修改后需重启M2生效。
• \Envir:存放所有游戏脚本与配置,包括NPC对话、怪物刷新、地图信息。
DBServer 数据库服务器:管理玩家账户与角色数据。
• DBServer.exe:数据库主程序,处理账号注册、角色存取。
• FDB 目录:存放所有玩家角色数据文件(人物名.DB),严禁在服务器运行时直接修改。
• ID.DB:存储所有注册账号信息。备份时需同时备份此文件与FDB目录。
LoginSrv 登录网关:验证账号密码,分配游戏网关。
• LoginSrv.exe:登录验证主程序,连接LoginGate。
• LoginGate.exe:登录网关,默认端口7000。玩家通过此网关进入账号验证流程。
SelChrGate 角色网关:选择角色界面网关。
• SelChrGate.exe:角色选择网关,默认端口7100。验证后进入角色列表。
RunGate 游戏网关:玩家进入游戏后的通信通道。
• 通常有多个(RunGate.exe),默认端口7200、7300等,分摊玩家连接压力。网关数量在!Setup.txt中设定。
LogServer 日志服务器:记录游戏内活动。
• LogDataServer.exe:日志服务主程序。所有日志存储在Log\目录下,包括聊天、交易、升级记录。
二、脚本配置中心 Envir 目录
MirServer\Mir200\Envir\ 是版本内容的核心,所有玩法由其中脚本定义。
怪物与爆率配置:
• MonGen.txt:定义地图怪物刷新。格式为地图 坐标X 坐标Y 怪物名 范围 数量 间隔。修改后需重读怪物列表。
• MonItems\ 目录:存放所有怪物爆率文件,文件名对应怪物名称。调整爆率直接修改此目录下文本。
NPC 脚本与商店:
• Market_Def\ 目录:所有NPC对话脚本,按地图分类。NPC功能在此目录编写。
• Market_Prices\ 目录:NPC商店货品定价文件。物品价格与数量在此设定。
• Merchant.txt:NPC配置文件,定义NPC名称、地图、坐标、脚本文件对应关系。
地图与物品定义:
• MapInfo.txt:所有地图配置文件,定义地图名称、编号、属性(是否可战斗、是否需要照明)。
• MiniMap.txt:小地图配置文件,将地图编号与客户端小地图图片对应。
• StdItems.DB:物品数据库,用DB Commander打开编辑。定义所有物品基础属性(名称、外观、属性、持久)。
任务与触发脚本:
• QuestDiary\ 目录:存放自定义脚本与数据文件,版本特色玩法通常在此编写。
• Robot_def\ 目录:机器人脚本目录,可设置定时全服活动(如世界BOSS、公告)。
• MapQuest_def\ 目录:地图触发脚本,控制进入地图、拾取物品等事件。
三、启动流程与文件关联
服务器启动顺序为:1. 启动游戏控制器 → 2. 自动启动DBServer、LoginSrv、M2Server等。启动时各程序读取关联文件:
1. DBServer 读取 ID.DB 验证账号,连接 LoginSrv 进行验证。
2. LoginSrv 验证成功后,引导客户端连接 SelChrGate 选择角色。
3. SelChrGate 连接 DBServer 读取角色数据,验证后分配 RunGate 进入游戏。
4. M2Server 启动时加载 !Setup.txt 与 Envir 下所有配置,驱动游戏逻辑。
各程序通过 127.0.0.1 本地回环地址与默认端口通信,修改端口需在所有相关配置文件同步更改。
四、学习修改入门建议
新手应从修改 Envir 目录下文件开始:
1. 修改怪物爆率:进入 MonItems\,找到对应怪物名文本,调整物品与几率格式1/10 物品名。
2. 添加NPC:在 Merchant.txt 按格式添加一行,然后在 Market_Def\ 创建对应脚本。
3. 调整经验:打开 !Setup.txt 查找 Exp 参数,修改对应等级经验值。
修改前必须备份原文件。每次修改 !Setup.txt 或数据库需重启M2;修改脚本可游戏中用 @ReloadNPC 重读。理解文件关联是掌握版本修改技术的基础。
传奇服务端文件构成与功能解析
来源:
作者:
点击:

