自己架设的单机传奇修改切割伤害完整教程

来源: 作者: 点击:
自己架设单机传奇最大的乐趣就是可以随心所欲地改。切割伤害这个功能,在现在的版本里几乎是标配,想改成多少就改多少,一刀下去BOSS掉血按百分比还是固定数值,全凭你自己定。今天就专门把不同引擎下怎么修改切割伤害的方法讲清楚,跟着步骤走,都能搞定。

**一、先搞清楚你用的什么引擎**

改切割之前,必须知道自己服务端用的是哪种引擎。不同引擎的脚本写法不一样,改的地方也不一样。目前市面上最常见的就两种:

| 引擎类型 | 常见版本 | 特点 |
|---------|---------|------|
| GOM引擎 | GOM1108、GOM0325 | 脚本灵活,支持复杂功能,目前GM最爱用的引擎 |
| GEE引擎 | GEE、V8 | 和GOM类似,但部分命令有差异,操作更简单 |
| LEG/BLUE引擎 | 老牌引擎 | 脚本相对固定,改切割需要另外的方式 |
| 996引擎 | 手游端居多 | Lua脚本,改法不一样 |

如果不确定,去服务端文件夹里找启动程序的名字,或者看Mir200文件夹下的!Setup.txt,里面通常会写引擎版本。

**二、GOM引擎修改切割伤害详细步骤**

GOM引擎是目前最常见的,它的切割伤害通常是通过脚本在QF功能脚本里实现的。

**第一步:找到QF脚本文件**

进入你的服务端目录,找到这个路径:
```
D:\MirServer\Mir200\Envir\Market_Def\QFunction-0.txt
```
这是GOM引擎的触发功能脚本,所有攻击、捡物、死亡等动作的触发逻辑都在这里。

**第二步:搜索攻击触发段**

用记事本或Notepad++打开QFunction-0.txt,搜索`[@Attack]`或者`[@MagicAttack]`。`[@Attack]`是物理攻击触发,`[@MagicAttack]`是技能攻击触发。

如果找不到,可能你的服把切割写在了别的触发段里,比如`[@Struck]`(被攻击触发)或者直接调用了其他脚本。继续往下看。

**第三步:找到切割调用命令**

在`[@Attack]`下面,通常会有一行类似这样的命令:
```
#CALL [\切割系统\切割脚本.txt] @切割触发
```
这表示切割脚本被单独放在了QuestDiary文件夹里。顺着这个路径去找:
```
D:\MirServer\Mir200\Envir\QuestDiary\切割系统\切割脚本.txt
```

**第四步:修改切割数值**

打开切割脚本.txt,你会看到类似这样的内容:

```
[@切割触发]
#if
#act
mov n$总切割 0

#if
CHECKITEMW 屠龙刀 1
#ACT
MOV N$武器切割 5000

#if
CHECKITEMW 战神盔甲 1
#ACT
MOV N$衣服切割 3000

#if
#act
inc n$总切割 <$STR(N$武器切割)>
inc n$总切割 <$STR(N$衣服切割)>
M.HUMANHP - <$STR(n$总切割)>
SendMsg 5 触发切割,造成【<$STR(n$总切割)>】点额外伤害
```

这里面的`5000`、`3000`就是切割数值,单位通常是血量。想要改成多少直接改数字,比如想把屠龙刀的切割改成10000,就把`MOV N$武器切割 5000`改成`MOV N$武器切割 10000`。

**第五步:百分比切割修改**

有些服用的是百分比切割,比如每次攻击打掉怪物2%的血量。这种写法通常是:

```
M.AddhpPer - 2
```
或者
```
GetStringPos ..\QuestDiary\切割触发\怪物名字.txt <$CURRRTARGETNAME>
GetRandomText ..\QuestDiary\切割触发\怪物血量.txt S$怪物血量 <$STR(N21)>
DIV S$怪物血量 100
MUL S$怪物血量 <$STR(N$掉血率)>
M.HUMANHP - <$STR(S$怪物血量)>
```

想改百分比,直接改`MUL`后面的掉血率数值,或者把`2`改成你想要的数字(比如改成5就是打掉5%)。

**第六步:重载脚本生效**

修改完后保存文件,在游戏里输入命令`@重载QF`或者`@重新加载所有脚本`(具体命令看你引擎的设置)。如果不知道命令,重启服务端也能生效。

**三、GEE引擎修改切割伤害**

GEE引擎的改法和GOM类似,但稍微简单一点。

**第一步:找到QF脚本**

路径同样是:
```
D:\MirServer\Mir200\Envir\Market_Def\QFunction-0.txt
```

**第二步:找到切割调用**

搜索`[@MagicAttack]`,下面通常会有:
```
#CALL [\切割\切割.txt] @切割
```

**第三步:修改切割脚本**

打开`D:\MirServer\Mir200\Envir\QuestDiary\切割\切割.txt`,内容类似:

```
[@切割]
#if
checkitemw 切割神器 1
NOT CHECKCURRTARGETRACE = 0
random 75
#ACT
M.AddhpPer - 2
SendCenterMsg 180 251 【切割神器】触发,秒掉怪物2%血量 0 3
Break
```

这里的`M.AddhpPer - 2`就是每次攻击打掉怪物2%血量。想改成固定数值,可以用`M.HUMANHP - 5000`这种写法。

GEE引擎有个好处,不需要记录怪物血量,直接用百分比切割很方便。如果想改成固定数值,把`M.AddhpPer - 2`替换成`M.HUMANHP - 你要的数字`就行。

**四、996引擎(Lua脚本)修改切割**

如果你架设的是996引擎的手游传奇,脚本是用Lua写的。

**第一步:找到Lua脚本文件**

在服务端目录下找`lua`文件夹,通常是:
```
D:\MirServer\lua\scripts\
```

**第二步:找到切割相关函数**

搜索关键词`cut`、`切割`、`addatt`等。996引擎里,切割属性通常对应人物的210号属性。

**第三步:修改属性值**

在Lua脚本里,可能会有类似这样的代码:
```
local play_attr = {
[210] = 1000, -- 切割伤害值
[211] = 0, -- 切割倍数
}
```
或者通过函数设置:
```
changehumnewvalue(actor, 210, 5000) -- 设置临时切割属性
sethumnewvalue(actor, 210, 5000) -- 设置永久切割属性
```
直接改后面的数字就行。1000就是1000点切割伤害。

**五、如果没有切割脚本,怎么自己添加**

如果你的版本本来就没有切割功能,想自己加一个,可以按下面的方法。

**1. 在QF中添加攻击触发**

打开QFunction-0.txt,在最下面添加:

```
[@Attack]
#IF
#ACT
#CALL [\切割系统\切割.txt] @切割触发
```

**2. 创建切割脚本文件**

在`D:\MirServer\Mir200\Envir\QuestDiary\`下新建文件夹`切割系统`,在里面新建`切割.txt`。

**3. 编写最简单的切割脚本**

打开切割.txt,输入:

```
[@切割触发]
#if
#act
M.HUMANHP - 5000
SendMsg 5 触发切割,造成5000点额外伤害
Break
```

这个脚本的意思是:每次攻击,对目标额外造成5000点伤害。想改多少直接改5000这个数字。

**4. 加上装备检测(可选)**

如果想改成只有佩戴某件装备才能触发切割,可以这样写:

```
[@切割触发]
#if
CHECKITEMW 屠龙刀 1
#act
M.HUMANHP - 10000
SendMsg 5 屠龙刀切割触发,造成10000点伤害
Break
```

**5. 加上概率触发(可选)**

如果想改成有几率触发切割,加个随机判断:

```
[@切割触发]
#if
random 50 (50%概率触发)
#act
M.HUMANHP - 8000
SendMsg 5 幸运触发切割,造成8000点伤害
Break
```

**六、修改注意事项**

**1. 备份原文件**

任何修改之前,先把原文件复制一份备份,改坏了还能还原。

**2. 注意路径和文件名**

GOM/GEE引擎对路径和文件名大小写不敏感,但最好保持一致,避免出错。

**3. 重载脚本**

修改后一定要重载脚本或重启服务端,否则不生效。

**4. 切割伤害类型**

- `M.HUMANHP - 数字`:固定数值伤害
- `M.AddhpPer - 数字`:百分比伤害
- 两种可以混用,比如固定+百分比同时触发

**5. 注意怪物封顶伤害**

如果你设置了怪物的封顶伤害(MP字段),切割伤害可以无视这个封顶,照样打出高额伤害。

**6. 切割对玩家无效**

大部分切割脚本里都有`NOT CHECKCURRTARGETRACE = 0`这个判断,意思是目标不是玩家(0代表玩家)时才触发切割。所以切割通常只对怪物有效,PK时不生效。

**七、常用切割命令速查表**

| 功能 | GOM/GEE命令 | 说明 |
|------|-------------|------|
| 固定数值切割 | `M.HUMANHP - 5000` | 每次攻击额外掉5000血 |
| 百分比切割 | `M.AddhpPer - 2` | 每次攻击打掉2%血量 |
| 检测佩戴装备 | `CHECKITEMW 装备名 1` | 检测是否佩戴该装备 |
| 随机概率 | `random 50` | 50%概率触发 |
| 发送提示 | `SendMsg 5 内容` | 发送系统提示 |
| 检测目标是否为怪物 | `NOT CHECKCURRTARGETRACE = 0` | 0=玩家,大于0=怪物 |
| 累加切割值 | `inc N$总切割 <$STR(N$武器切割)>` | 把多个切割值加起来 |

**八、实战案例:改成你想要的样子**

**案例1:改成每次攻击固定掉10万血**

在切割脚本里写:
```
M.HUMANHP - 100000
```

**案例2:改成每次攻击打掉怪物5%血量**

```
M.AddhpPer - 5
```

**案例3:只有佩戴“开天”才能触发,每次掉88888血**

```
#if
CHECKITEMW 开天 1
#act
M.HUMANHP - 88888
SendMsg 5 开天切割触发,造成88888点伤害
```

**案例4:10%概率触发,触发时打掉怪物10%血量**

```
#if
random 10
#act
M.AddhpPer - 10
SendMsg 5 幸运触发10%切割,打掉怪物10%血量
```

**九、总结**

自己架设的单机传奇修改切割伤害,核心就几步:

1. **确认引擎类型**(GOM、GEE还是其他)
2. **找到QF脚本和切割脚本**(通常在Mir200\Envir\下)
3. **修改切割数值**(固定值改数字,百分比改百分比数字)
4. **重载脚本或重启服务端**

只要找到地方,改数字就行。想改多变态就改多变态,一刀下去BOSS直接躺,全凭你高兴。如果找不到切割脚本,就自己按教程加一个,也不复杂。改完之后进游戏测试,一刀砍怪看看掉血数字是不是你想要的,不对就回去再调。