设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 6220|回复: 15
打印 上一主题 下一主题

[交流讨论] 使用YEP制作有趣的技能:巫医的弹弹乐 浅谈弹道弹射的制作

[复制链接]

Lv1.梦旅人

梦石
0
星屑
220
在线时间
135 小时
注册时间
2008-4-30
帖子
106
跳转到指定楼层
1
发表于 2017-2-22 02:31:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 yihe74 于 2017-2-22 09:38 编辑

演示视频:

录得不好,见谅~~
演示了三种情况,分别是多个敌人,一个敌人,两个敌人的情况下,技能的不同效果。
首先,用到的插件:
YEP——BEC、Actpacks
Yami的自定义横版动作(非必要)
MOG的BattleHUD(非必要)
以及YEP——TargetCore Edit By Misuqian
在此鸣谢!
-----------------------------------------
近日在下一直研究如何制作出一个弹射类的技能:
就像是dota中巫医的麻醉药瓶,向第一个敌人掷出以后会一直在敌人单位中不断弹射,如果两个人的话会在彼此之间一直弹射;
要是一个人只会受到一次技能效果。
但是在YEP中这并不是一个很容易实现的效果(也许是我的插件版本太老),只有VE才可以实现这个功能。然而在下又不愿放弃YEP后续强大的功能,比如说RowFormation,于是

就研究出这样一个实现方法。若是有更为简便的实现方法,请各位看官不吝赐教。
------------------------------------------
不知各位是否研究过war3中的地图?在war3的地图中经常会使用这样的方法来实现技能效果:
创建一个透明的单位来释放技能以达到视觉效果。
在这里我们也是这样一个思路:
首先我们在数据库定义一个角色作为投射物,设定好他的行走图,这里我使用了Yami的自定义横版动作来定义它的walk动作。在此也向各位看官强烈推荐这个插件,非常简便好

用!
那么我们在技能设置中就要把它先加入队伍才行,不过要是透明的,不然太突兀了,效果会很烂!
eval: $gameParty.addActor(5)
opacity character 5: 0, 1
这样就实现了加入一个透明的投射物,不过要记得先将HUD隐藏起来 不然多出一个投射物的头像真的很尴尬!
那么我们要在前面加上:eval: $gameSystem._bhud_visible = false
但是由于YEP自身机制问题,有的时候飞镖会被敌人的战斗图像覆盖,那么我们就需要手动强制一下:
eval: Yanfly.Param.BECSideSpPrio = 1
这样就做完了准备工作。
我们先将投掷物移到User身边,这很简单就不帖代码了。
之后再投过去,不过不要忘记把透明度改回来!不然就是空气飞弹啦!
然后将动画效果补上,角色归位
最后不要忘记恢复HUD以及删除投掷物:
eval: $gameSystem._bhud_visible = true
eval: $gameParty.removeActor(5)
这里就是技能动作序列的书写要点了,稍后我会贴上动作序列,请各位看官不要着急,且听在下再罗嗦两句。
---------------------------------------------
现在我们来谈谈目标的选择,使用自带随机目标机制会造成一种很尴尬的局面,一个敌人被连续弹射多次。为了解决这个问题,我使用了YEP——TargetCore  Misuqian修改版

本,(再次在此鸣谢!)并且稍加修改,完成了这个弹射机制。
说一下我的思路:我们要在装有所有敌人单位的集合里挑出几个随机的编成数组来完成目标的挑选。上述插件很好的解决了随机挑选这一过程中的重复问题。
由于最终的目标数组是由初目标(我们指定的那个倒霉蛋)以及随机数组连接(concat)起来的,那么会出现以下两个情况:
连续对初目标的弹射以及在只有一个目标的时候造成两次技能效果。
这显然不行!
于是我做了很简单的修改:
在730行左右写Targetrandomfoes的这一块末尾加入了这样的判断:
if((targets[0] == targets[1]) && (targets.length != 2)){
                targets[1] = targets[2];
                targets[2] = targets[0];
        }
       

if(targets[0] == targets[1]){
                targets.splice(0,1);
        }
就解决了。
PS:这样是不会在同一敌人上起到2次技能效果的(除去初目标至多两次),若是各位看官感觉想做出那种在两个人之间一直弹射的效果,请自行修改TargetCore原版,使他的数组相邻元素不同就行了。
好了,最后附上行动序列:
<Target: Target 2 Random Foes>
    <setup action>
     eval: $gameSystem._bhud_visible = false
     eval: Yanfly.Param.BECSideSpPrio = 1
     Motion victory: user
     animation 52: user
     wait for animation
     MOVE user: forward, 100, 5
     MOTION thrust: USER
     wait: 36
     eval: $gameParty.addActor(5)
     opacity character 5: 0, 1
     MOVE character 5: user, FRONT BASE, 1
     opacity character 5: 100%, 1
     MOTION walk: character 5
    </setup action>
    <whole action>     
    </whole action>
    <target action>
     MOVE character 5: TARGET, CENTER, 17
     WAIT FOR MOVEMENT
         ACTION ANIMATION
         ACTION EFFECT
    </target action>
    <follow action>
    </follow action>
    <finish action>
        eval: $gameSystem._bhud_visible = true
        eval: $gameParty.removeActor(5)
        WAIT FOR ANIMATION   
        WAIT: 25   
        MOVE user: return, 20
        MOTION MOVE: USER
        JUMP user: 50%, 20
        WAIT FOR MOVEMENT
        PERFORM FINISH
    </finish action>
-----------------------------------------------
这个思路还有很多用处啦,比如说用来代替体积庞大的技能效果,使角色的战斗动画更为精简等等
FINISH AND ENJOY!

评分

参与人数 4星屑 +190 +1 收起 理由
涅普姬雅 + 1 塞糖
白嫩白嫩的 + 10 感谢分享心得!!!
柳岳枫 + 60 精品文章
夜$神 + 120 干货,很强。

查看全部评分

Lv1.梦旅人

梦石
0
星屑
55
在线时间
407 小时
注册时间
2011-4-10
帖子
359
2
发表于 2017-2-22 08:21:23 | 只看该作者
很好的思路啊,用角色模拟抛射物。这样的话,让人头疼的VE与YEP的兼容性问题也就绕过去了。

点评

拖尾效果:多创建几个临时角色,在第一个被抛出后,间隔很短的时间就陆续抛出其余的,保持它们的移动路线与第一个一致,设置一下透明度。  发表于 2017-2-22 20:27
哈哈 多谢夸奖 不过还有一个问题没有解决,就是扔出去的投射物没有拖尾效果,就像dota里面wd和lich的技能都有这种效果 显得自然美观~~  发表于 2017-2-22 09:17
回复 支持 0 反对 1

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
14232
在线时间
718 小时
注册时间
2011-7-16
帖子
1428

开拓者

3
发表于 2017-2-22 17:56:41 | 只看该作者
太强大了,这战斗效果超炫
RMMV网络插件,开源免费,内含服务器端,无需强制登录,云数据,弹幕,云存档,排名,兑换码,版本检测,可自由上架下架删除。q群399090587
免打包运行MV游戏,云游戏,安卓App雷神游戏厅,在线玩游戏,上传下载游戏
开源游戏:重装机兵之重装归来【RMMV制作】全球首款按照美剧分季分集的方式发布的游戏
体素画 -- MV画3D像素图的画板
RMMV显示3D模型和场景的插件
RMMV显示spine骨骼动画的插件
RMMV秘密通道插件
突破敌群数量上限8个的插件
在rmmv中显示gif动态图片的插件
一款可以在mv游戏界面的任意位置显示任意文字的插件
RMMV Toast 插件 带物品得失提示,可以设置开启关闭 兼容yep itemcore
制作一个改名卡道具插件、调整标题页面菜单的插件、在标题页面之前显示大段文字的插件、标题页面显示版本号的插件
物品得失自动提示自动上色自动换行插件
我的Q群 663889472
另外,我的插件、范例、游戏都在这里
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4669
在线时间
112 小时
注册时间
2016-1-15
帖子
64
4
发表于 2017-2-24 09:29:14 | 只看该作者
楼主的脑洞让人佩服。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
36 小时
注册时间
2016-2-15
帖子
19
5
发表于 2017-3-2 17:52:01 | 只看该作者
可以实现小小扔队友的技能了!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
34 小时
注册时间
2017-3-25
帖子
42
6
发表于 2017-8-25 10:02:50 | 只看该作者
你好,请问哪里可以下载YEP——TargetCore Edit By Misuqian这个插件?
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1881
在线时间
319 小时
注册时间
2015-1-13
帖子
51
7
发表于 2017-9-23 14:57:12 | 只看该作者
本帖最后由 venomom 于 2017-9-23 18:54 编辑

挺好的创意,不过要是用了yep的ctb插件就尴尬了……还是希望yanfly专门出个投掷物品功能的插件
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

8
发表于 2017-9-23 15:36:25 | 只看该作者
有趣是有趣。不过也应该有克这个,破这个的。
不然就是单纯的刷怪,失去了操作性。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
852
在线时间
231 小时
注册时间
2013-10-30
帖子
159
9
发表于 2017-9-28 14:38:22 | 只看该作者
老铁  这东西好几个插件不兼容啊
还有我就想简单做个技能 扔出去个技能 技能在怪之间随便弹  有什么简单的方法没

点评

http://www.yanfly.moe/wiki/Action_Sequence_Impact_(Irina) 现在有这个插件是和yep兼容的,但是收费。。。  发表于 2020-8-6 05:40
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
329
在线时间
46 小时
注册时间
2020-4-22
帖子
24
10
发表于 2021-10-30 09:01:56 | 只看该作者
草了,大佬真是鬼才
这下弹道插件都省了!

点评

你才是厲害.... 視頻早就死掉了... 你還有辦法做這樣的回覆? 都是看到甚麼東西啊?  发表于 2021-10-30 13:22
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-4 13:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表