位置: 编程技术 - 正文
推荐整理分享MOBA游戏草丛系统的个人思路(关于草丛:单局游戏内),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:lol草丛英雄,草丛怎么打,草丛怎么打,英雄联盟草丛叫什么,lol草丛放技能会暴露视野吗,关于草丛:单局游戏内,lol各个草丛的名字,关于草丛:单局游戏内,内容如对您有帮助,希望把文章链接给更多的朋友!
英雄联盟,作为一款火爆的MOBA类游戏,其一大特色就在于玩家可以——“躲草”。用一句话来概括躲草,那就是:当玩家控制的英雄躲入地图中的草丛,则对敌形成隐身效果,达到埋伏、偷袭的效果。笔者有幸参与了一款基于Unity引擎的MOBA游戏的研发,并负责躲草系统的设计与实现。下面简单介绍一下个人设计思路,欢迎大家前来交流!
首先,作为一款长连接网络游戏,几乎任何功能都是由服务端和客户端两部分来完成的,至于草丛系统,有两种设计思路:
1.数据及主要逻辑部分放在客户端,服务端仅做简单调整。这种写法的好处是减轻服务端运算及网路通讯压力,坏处是有可能因为外挂而在本地窥探到隐藏的敌人,而让敌方无法察觉。
2.数据及主要逻辑部分放在服务端,客户端仅需依靠若干信号量(如是否在草中、是否隐身)来控制游戏物体的显隐。这种写法的好处是提高游戏的安全性,坏处是增大了服务器的运算和通信负担。
笔者综合了服务器性能与开发效率的考量,使用了第一种方案。
接着,理清要实现的功能模块:
1.草地区域编辑模块:设计一种能描述草地不规则形状的直观的编辑器,利用Unity3d引擎的场景来保存数据,每一块草地都要有自己的标识ID。
2.隐身效果触发模块:隐身效果要分半透明和完全透明两种,只要在草中,至少要半透明(友方中一定是半透明),若满足隐身条件则全透明(敌方中);敌方范围技能打我方躲草英雄,我方掉血但不暴露,我方躲草打敌方,则我方暴露,并给敌方三秒钟视野;自带隐身效果的英雄,走出草地不得解除隐身;当我方处于隐身状态,在敌方中,血条特效小地图标记等等都要隐藏掉;当敌我双方共同位于一块草地中,双方都不能因为躲草而处于隐身。
3.AI识别模块:我英雄一旦入草隐身,敌方AI必须忽视掉我方英雄,这个操作在服务器端完成。
草地地形编辑展示:
上图中,每一块草地的进入判定,都是一个二级查找:黄框圈定一块草地的大范围、白框具体拼接处一块草地的形状。每一组白框,他们的数量是可以随意增加的,使用越多的白框来描述一块草地的范围,其效果越接近于真实。
Unity3D中Awake和Start方法的区别 转载自:
Unity3D人物控制移动脚本编写及分析 usingUnityEngine;usingSystem.Collections;publicclassPlayerControl:MonoBehaviour{[HideInInspector]//隐藏属性,让其不在面板上显示publicboolfacingRight=true;//定义朝向[HideInInspector]pub
使用Unity3D的个技巧:Unity3D最佳实践 关于这些技巧这些技巧不可能适用于每个项目。这些是基于我的一些项目经验,项目团队的规模从3人到人不等;框架结构的可重用性、清晰程度是有
标签: 关于草丛:单局游戏内
本文链接地址:https://www.jiuchutong.com/biancheng/383618.html 转载请保留说明!友情链接: 武汉网站建设