发博文
正文 字体大小:

[Unreal3_Kismet]King of the Hill对战模式

(2009-12-20 19:41:39)
标签:

杂谈

分类: [游戏设计]

作者:朱佳敏 zjmjeo@qq.com

【前言】
1. 做一个类似于TF占山为王模式的功能,类似的还有魔兽世界-虚空风暴战场。
2. U3视频:http://www.tudou.com/programs/view/hGjTN9pfB1I/
3. 简单说明一下制作思路。不面向新手,如果看了还不知道怎么做就不要勉强了
4. 附上KISMET截图几张
5. 平时比较懒,不会主动写教程,有需求的话,尽量把需求详细写明,能提供素材更好,能做的我会完成并将制作流程做成图文教程发到网上

【功能描述】在单人触发情况下(不考虑多人同时在触发区域内)
1. 玩家进入区域(Control Point),进入抢点模式
2. 模式:CP有一个占领信息,如果红方试图占领蓝方的据点,需要花费额外的时间;如果红方在占领途中离开,占领中断并保留离开时的占领信息;红方回到CP,可以继续占领
3. 当CP被完全占领后,启动胜利倒计时(20秒),时间结束后,占领方胜利;如果期间完全占领状态消失,倒计时中断
4. 如果红方完全占领CP,蓝方可以抢回CP并打断胜利倒计时
5. 如果红方在蓝方完全占领CP前抢回CP,则红方再次完全占领后可以继续胜利倒计时
6. 如果红方没有在蓝方完全占领CP前抢回CP,蓝方完全占领CP后将红方的胜利倒计时重置为20秒
7. 反之亦然

【不足】
如果双方同时在触发区域内,就要把触发判断改为小队判断;如果区域内只有单方队伍成员,进入占领模式;如果区域内有双方成员,则不执行任何动作;这个功能需要程序来扩展。

【制作思路】
1. 创建变量
整数变量CP=0,记录占领信息
整数变量TeamNumber,来表示玩家在蓝队还是在红队。蓝队=-1,红队=1
逻辑变量State,来判断玩家是否在CP区域内?在为真,不在为假
整数变量RED_CD,红队胜利倒计时计数器
整数变量BLUE_CD,蓝队胜利倒计时计数器
整数变量CDValue=20,计数器赋值
[Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
2. 建立一个TriggerVolume,放在队伍初始的地方,给玩家赋值队伍信息
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
3. 在关卡开始时,初始化CP=0,RED_CD=BLUE_CD=0
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
4. 新建两个Trigger,用来给玩家换队伍;玩家点击同队的队伍切换无效果
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
5. 抢点功能序列
首先,玩家进入/离开CP是给State赋值
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
其次,如果玩家在圈内,判断玩家是红队还是蓝队,然后根据判断结果执行红队/蓝队的占领序列。如果是红队占领,进入CP+1的计数状态。当CP<6的时候,延时1秒返回玩家在圈内?的逻辑判断;当CP>=6时,表明完全占领,重置对方的胜利倒计时,然后进入自己的胜利倒计时
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
最后,一方完全占领CP后进入该方胜利倒计时,先判断是否完全占领,然后进入CD-1的计数状态,延时1秒返回CP是否完全占领的判断;是则继续Count Down。当CD=0的时候,宣布占领方胜利
 [Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式
完整的抢点功能序列图

[Unreal3_Kismet]King <wbr>of <wbr>the <wbr>Hill对战模式

【关于视频】

上传土豆的视频很不清晰,要通过看左下方的log信息才能知道整个状态,测试过程

1.占点中途离开,CP计数中断;回到占点处,CP计数继续

2.红方胜利倒计时开始,去绿色物体处更换到蓝队

3.回到占点处打断计数器,占领点并进入蓝方胜利倒计时

4.去红色物体处更换到红队,重新占领点,倒计时从20开始

5.胜利倒计时时跑到别处,倒计时继续,倒计时到0时,宣布红方胜利

阅读 评论 收藏 转载 打印举报
已投稿到:
  • 评论加载中,请稍候...

       

    验证码: 请点击后输入验证码 收听验证码

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有