找传奇、传世资源到传世资源站!

传奇GM教程 传奇杀人魔戒的制作方法

2021.5.16 技术教程 2055 编辑

魔戒属性隐藏,可以大幅度提高自身攻击力,魔法和道术,并会被恶魔附体,提高全身属性总和的10%,但是魔戒也有邪恶的一面:戴上后无法取下,所带魔戒之人必须每隔一个小时杀一个人来用鲜血祭奠恶魔之魂。若一个小时内不杀人,那么你将会被魔戒杀死,并且魔戒自动消失,真正的被杀哦,还会掉装备。还有一个相当严格的要求,你所杀死的人必须高于35级,而且不能连续杀死同一个人,否则无效,你不要以为下线或者小退等就可以延长时间,无用的,下线自动保存时间,再次上线后自动计算你的剩余时间,杀死一个人以后就可以把你的生命重新延长至一个小时。 

在土城的戒灵处可以合成魔戒,也可以使用元宝将已戴上的魔戒取下来。合成魔戒的材料在中土地图中取得。 

魔戒特点: 

1.带上后属性大增,但是拿不下来. 

2.从带上那一刻,每一小时你就要杀一个人. 

杀35级以下小人无效,杀同一个人无效. 

3.如果你按魔戒的指示,杀死了一个人后,重新让你的生命增加一小时. 

4.如果你没有完成杀人任务,魔戒会消失,并把你杀死,无论你是小退,还是下线. 

5.安全区开通下线挂机功能时,自动关闭计时器. 

关于增加全身属性10%,这一点你可以设置一个套装,你面只要一件物品就行了 

其他的功能用脚本可以实现,最大的难度是. 

1 计时问题. 

2 如何判断你杀的人是否已经杀过.你杀的人的级别是多少? 

解决: 

1.计时问题,可以用上jsM2 的个人时钟,但个人时钟只适合短时间计时,以秒计算,且下线在上线后计时停止. 

实现长时间的计时,这里我发现了一个计巧.就是用一个 human 的个人参数.计时设成60 就是60秒.第计时一分钟,参数+1 

,但这个参数到60时,便是一小时.参数清0重新计时.小退在上时,只要在启动个人时钟就可以继续计时. 

2.第二个问题的解决.是我发现了最新的M2的一个特殊功能,就是让他人执行脚本 

[@PlayDie] 

#IF 

#ACT 

Mov S10 <$Killer> 

HCall <$STR(S10)> @TTT 

你可以利用被杀者的这一脚本把,把资料传送给杀人者-<$Killer> 

原理:就是把传过来的杀人者的姓名,判断是不是带魔戒的(之前我把带魔戒的玩家写入一个文本中) 

如果是,在判断自已的级别是不是大于35级.自已是不是在杀人者杀过人的名单里.如果都不是.那么触发杀人者脚本.来改变他的参数. 

=================================== 

部分关键脚本: 

Qmanage.txt 

;魔戒记时 

[@OnTimer6] 

#IF 

checkitemw 魔戒 

#ACT 

break 

#CALL 

[\\游戏活动\\魔戒记时.txt] @魔戒记时 

#if 

#act 

SetOffTimer 6 

set [108] 0 

CALCVAR HUMAN MJJS = 0 

CALCVAR HUMAN MJTIME = 0 

SAVEVAR HUMAN MJJS 

..\\QuestDiary\\游戏记录\\魔戒记时.txt 

SAVEVAR HUMAN MJTIME ..\\QuestDiary\\游戏记录\\魔戒记时.txt 

CHANGEMODE 3 0 

...................... 

[@魔戒记时] 

#if 

checkcastlewar 0 

CHECKVAR HUMAN MJTIME = 2 

#act 

break 

CHANGEMODE 3 0 

sendmsg 7 [地狱之声]攻城期间,魔戒暂时失效. 

#if 

checkcastlewar 0 

CHECKVAR HUMAN MJTIME = 1 

#act 

break 

CHANGEMODE 3 0 

sendmsg 

7 [地狱之声]攻城期间,魔戒暂时失效. 

#if 

CHECKVAR HUMAN MJTIME = 0 

CHECKVAR 

HUMAN MJJS = 0 

#ACT 

break 

CALCVAR HUMAN MJJS + 1 

SAVEVAR HUMAN 

MJJS ..\\QuestDiary\\游戏记录\\魔戒记时.txt 

CHANGEMODE 3 0 

sendmsg 0 

[地狱之声]被地狱"魔戒"附身的【%s】走到了生命的终结,现在等待它的只有死亡. 

................... 

Qfunction-0.txt 

;死亡触发 

[@PlayDie] 

#IF 

#act 

set [111] 0 

set [112] 0 

set [113] 0 

MOV S0 <$KILLER> 

MOV S1 

<$USERNAME> 

MOV S2 <$LEVEL> 

#CALL [游戏活动/被杀人检测.txt] @被杀 

[@被杀] 

#if 

CheckTextList QuestDiary\\游戏记录\\拥有魔戒者.txt 

<$str(S0)> 

#act 

break 

goto @被魔戒杀 

[@被魔戒杀] 

#if 

CHECKLEVELEX < 35 

#act 

break 

sendmsg 5 

[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,。 

HCall <$STR(S0)> @魔戒复活1 

#if 

;CHECKNAMELIST ..\\QuestDiary\\游戏记录\\魔戒杀人记录\\<$str(s0)>.txt 

CheckTextList QuestDiary\\游戏记录\\魔戒杀人记录\\<$str(s0)>.txt <$USERNAME> 

#act 

break 

sendmsg 5 

[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,这里记录你已经让他杀过,下回小心了。 

HCall <$STR(S0)> 

@魔戒复活2 

#if 

#act 

sendmsg 5 

[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,魔戒具有隐身能力,所以你看不到杀人者。 

AddTextList 

QuestDiary\\游戏记录\\魔戒杀人记录\\<$str(s0)>.txt <$USERNAME> 

HCall 

<$STR(S0)> @魔戒复活3

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复