传奇DB数据库代码详解:MagicDb怪物StditemDb三表全字段

来源: 作者: 点击:
传奇服务端的数据核心是DB数据库,所有技能效果、怪物属性、装备数值都存放在三个主要数据表中。这三个表分别是MagicDb(技能表)、MonsterDb(怪物表)和StditemDb(物品表),每个表由几十个字段组成,每个字段控制着游戏内的具体表现。

**MagicDb技能表字段与职业代码**

MagicDb存储所有职业技能的数据,每个技能从学习条件到伤害数值都在这里定义。字段结构如下:

| 字段名 | 作用说明 |
|--------|----------|
| magsid | 技能唯一代号,数据库内不可重复 |
| magname | 技能名称,显示在技能栏中 |
| effect type | 效果属性,控制技能动画类型 |
| effect | 释放技能时产生的动画效果代码 |
| spell | 每次释放消耗的魔法值 |
| defspell | 技能升级后每次消耗魔法值的增加量 |
| defpower | 技能升级后威力的增加量 |
| defmaxpower | 技能升级后最大威力的增加量 |
| job | 职业限制,0为战士,1为法师,2为道士 |
| power | 技能基础伤害值 |
| maxpower | 技能可达到的最大伤害值 |
| t1ainlv | 技能升级所需的经验值 |
| needlv | 学习该技能需要的人物等级 |
| mode | 技能类型,0战士技能,1道士技能,2法师技能 |
| needl1 | 技能升到1级所需等级 |
| l1train | 技能升到1级所需修炼经验 |
| delay | 技能释放后的延迟时间,影响连招节奏 |
| descr | 技能备注说明字段 |

修改技能数据时,job字段控制哪个职业可用,改成0就是战士技能,改成1就是法师技能。

**MonsterDb怪物表字段与怪物行为代码**

MonsterDb控制所有怪物的属性,从血量到攻击模式都在这里设定。核心字段包括:

| 字段名 | 作用说明 |
|--------|----------|
| SID | 怪物代号,唯一标识 |
| Name | 怪物名称 |
| Race | 行动模式及死亡效果代码 |
| Racelmg | 攻击模式代码 |
| Appr | 怪物外观形象代码 |
| Lvl | 怪物等级 |
| Undead | 是否不死系,0否1是,影响召唤技能效果 |
| CoolEye | 主动攻击范围,反隐形检测距离 |
| EXP | 击杀后获得的经验值 |
| HP | 怪物生命值 |
| MP | 怪物魔法值 |
| AC | 物理防御下限 |
| AC2 | 物理防御上限 |
| MAC | 魔法防御力 |
| DC | 攻击力数值 |
| SPEED | 移动速度 |
| HIT | 命中率 |
| Walk-SPD | 行走速度 |
| WalkStep | 行走步伐参数 |
| WalkWait | 行走等待时间 |
| ATTACR-SPD | 攻击速度 |

Race和Racelmg这两个字段决定怪物的行为逻辑。比如沃玛教主的Race代码为21,对应电火花攻击模式;触龙神的Race代码为33,对应大范围喷毒效果。修改怪物爆率不在MonsterDb中,而是在服务端MonItems目录下的独立文件中调整。

**StditemDb物品表字段与装备属性代码**

StditemDb是最复杂的表,所有装备、道具的属性都在这定义。完整字段如下:

| 字段名 | 作用说明 |
|--------|----------|
| idx | 数据库序列号,不可重复 |
| NAME | 物品名称 |
| Stdmode | 装备类型代码,决定物品归属栏位 |
| Shape | 穿戴后的外观样式代码 |
| Weight | 物品重量 |
| Anicount | 特殊属性字段 |
| Source | 特殊属性字段 |
| Reserved | 特殊属性字段 |
| Looks | 物品栏和装备栏显示的外观代码 |
| DuraMax | 物品持久度,1000表示1点持久 |
| Ac | 防御下限 |
| Ac2 | 防御上限 |
| Mac | 魔御下限 |
| Mac2 | 魔御上限 |
| Dc | 攻击下限 |
| Dc2 | 攻击上限 |
| Mc | 魔法下限 |
| Mc2 | 魔法上限 |
| Sc | 道术下限 |
| Sc2 | 道术上限 |
| Need | 佩戴限制类型,0无限制,1攻击力,2魔法力,3道术 |
| NeedLevel | 佩戴所需等级 |
| Price | 商店售价 |
| Stock | 是否库存品 |
| NoHero | 英雄是否可使用 |
| Power | 固定特殊属性,如致命一击 |
| Upgrade | 高级属性标记 |
| Color | 物品名字颜色代码,支持0-255 |
| Light | 发光效果代码 |
| Descr | 物品说明文字 |

Stdmode字段决定装备属于哪个部位:10为男衣,11为女衣,5为单手武器,6为双手武器,20为项链,15为戒指,30为蜡烛类,22为毒药符类,24为手镯,42为制作原料。

**DBC2000数据库查看与路径设置**

DBC2000是查看和编辑这三个DB文件的工具。安装后在控制面板找到BDE Administrator,新建数据库并命名为HeroDB,路径指向服务端的DB文件夹(如D:\MirServer\Mud2\DB)。路径设置错误会导致引擎启动时无法读取数据。数据库修改保存后需重启服务端才生效。