本帖最后由 random 于 2020-1-23 19:40 编辑
最近写版本的过程中,遇到一些稀奇古怪的要求。
于是有了以下的东西,将它共享出来,希望大家能做出更多好玩的版本。
个人美工水平有限,所以做了个简易版本。
说说实现方式
先说淬炼:盛大支持淬炼格式如下。
- 1 1 生命值 +%u
- 2 1 躲避 %u
- 3 1 魔法躲避 %u%%
- 4 1 命中 %u
- 5 1 魔法命中 %u%%
- 6 2 攻击 %u-%u
- 7 2 道术 %u-%u
- 8 2 魔法 %u-%u
- 9 2 防御 %u-%u
- 10 2 魔法防御 %u-%u
- 11 1 幸运 +%u
- 12 1 吸血 +%u
- 13 1 无视物理防御 %u
- 14 1 无视魔法躲避 %u
- 15 1 无视物理躲避 %u
- 16 1 暴击等级 +%u
- 17 1 无视魔法防御 %u
- 18 1 抗性 +%u
- 19 1 双倍暴击 %u%%
- 20 1 韧性 +%u
复制代码
第一个数字是ID,数据库中也是相对应的淬炼ID。第二个数字是代表需要的参数值,1 就是只读取第一个参数CL1VAL,2就是读取CL1val-CL2VAL的值。
技能是如何显示和实现的。
- 51 1 小火球 强化+%u
- 52 1 治疗术 强化+%u
- 53 1 初级剑法 强化+%u
- 54 1 精神战法 强化+%u
- 55 1 火炎刀 强化+%u
- 56 1 施毒术 强化+%u
复制代码这是自定义的,放在客户端DB_CuiLianCfg.txt
第一个参数值代表技能ID。第二个参数值就是加强的系数。
比如51 在游戏中是怎么读取并且获得该装备的技能属性的呢。
$ITEMINFO[$STR(S50)].CLIAN1ATTRIB 为数据库的装备DB, - 50 就是技能Id啦,有了技能ID,就可以获得技能名称。
$USERMAGIC($STR(P62)).NAME 技能的名称
$HUMAN($USERMAGIC($STR(P62)).NAME) 当前技能具体是哪个技能根据装备自适应获得。技能的加强系数。
- [@TAKEOFFALL]
- #IFONE
- EQUAL $PARAM(3) 0
- EQUAL $PARAM(3) 1
- #ACT
- MOV D87 1
- MOV S50 $USEITEMMAKEINDEX($PARAM(3))
- #CALL [\游戏功能\穿戴装备.txt] @淬炼属性
复制代码- [@TAKEONALL]
- #ACT
- MOV D87 2
- MOV S50 $PARAM(2)
- #CALL [\游戏功能\穿戴装备.txt] @淬炼属性
复制代码
上面是关于技能淬炼的脚本
------------------------------
下面是器灵属性的制作。
这里就不贴脚本了,只是说说实现方式,因为可能的类型很多,可以完全自定义,做出任意你需要的东西。
引擎需要支持宝石镶嵌。
以时光模式为例。
装备位置 237 238 239是镶嵌的位置。
我以237 为自定义的图片。数据库自己添加。
238作为一个属性值,图片items目录: 60001 -60009 =分别代表 1 - 9 图片的偏移量自己计算。
239作为一个属性值,图片items目录: 60011 -60019 =分别代表 1 - 9 图片的偏移量自己计算。
[@获得物品]
#ACT
GIVE 裁决 1
SETITEMJEWEL $PARAM(10) 1 60050 这里的60050其实是自定义的物品。不过是比较大的图片。下面的也是。
SETITEMJEWEL $PARAM(10) 2 60001
SETITEMJEWEL $PARAM(10) 2 60011
这里使用60050 等数字表示,是为了告诉大家,这个物品的looks
实际上,他的名字应该是 空格,也就是不可见的中文。这样就不会出现如上图的----横线。不会显示文字。
只是分享给听得懂的人,很多人说听不懂的,也别问我具体怎么实现的。
一个玩了十五年传世的老油条。
另外脚本不是最优脚本,可以自行编写。只是提供个范本。
甚至连测试都么测试,因为之前的脚本不是这样的。删除了一部分东西。添加了一部分东西。