文章目录

  • 项目名称
  • 项目背景
  • 项目简介
    • 项目架构
    • 项目特色
    • 大致功能需求
    • 游戏模式/内容
  • 项目技术选型
  • 项目分工
  • 项目具体计划

此次项目实训不完全按照项目计划书进行,因为游戏范围太广,可能随时调整游戏风格/玩法/类型。本篇同步更新。

项目名称

《基于Unity的2D多人乱斗闯关游戏设计与开发》

游戏类型:2D/3D多人乱斗闯关。不同小游戏轮换,玩家之间进行比拼。
网络要求:联网(游客/账号)/单机。游戏大厅功能。


项目背景

网络化的游戏能很大程度上提高趣味性。
电脑操控比手机端操控更方便。
“糖豆人”的爆火与热度的急速下降,充分反映出其优缺点。
此项目在分析“糖豆人”、多人综艺类型游戏的基础上,综合游戏优点,尽量修改不足点以提高游戏的可重复游玩性。


项目简介

项目架构

游戏主流CS架构,客户端由Unity引擎开发,服务端由C#开发。
因为Photon框架的特性,额外扩展为多服务端架构,其中部分服务器使用的是Photon官方提供的游戏服务器等。
Windows客户端。

[Tips]玩家游玩时有三条选择:
1. 只与PUN服务器连接,不保留战绩,昵称随时更改。(联网游客模式,无需账号密码)
2. 与自制服务端通信,保留游戏战绩记录参与后续排名统计。(联网排位模式,需要账号密码)
3. 与任何服务端无联系。(单机)

项目特色

项目具备联网,聊天交流特性。同时支持单机游玩。
除了保障游戏性,能大幅度增加社交性,可以与好友一起体验,更好地提高游戏趣味性。
充分发挥联网特性:可以创建房间,在大厅浏览房间选择加入。并且能满足每个人对于难度的需求,游戏可以设置为简单、普通、或困难模式。可以由房主自主选择,其他玩家按需选择游戏房间。
保障游戏趣味性的同时也要解决联网所带来的动画不同步等问题。

大致功能需求

人机交互方式选择键鼠操控,GUI。
游戏动画,多端位置、动画同步。
数据库存储玩家账号、战绩信息、资产。
聊天室,实时聊天。

游戏模式/内容

开发一款2D/3D的游戏。
通过研究“糖豆人”游戏火爆的本质,此项目将会开发一款玩法为多种小游戏轮换的多人对战模式。通过游戏轮换在较短时间内给玩家保持新颖奇特的游戏体验。
同时“糖豆人”游戏很快便失去了热度。引以为戒,所以在玩法上还将会有所不同,对于有些小游戏,结合“吃鸡”游戏特性,将会注重随机性以及更强的目标性,每一场游戏都能给玩家带来不同体验。
初步计划将包括如下几个小游戏:

  1. 技巧比拼2D
  2. 竞速(以收集元素为主要任务)3D
  3. pve3D
  4. pvp3D

项目技术选型

技术要点
Unity、素材建模、(帧)动画、网络Socket、数据库MySQL、Photon多人游戏开发框架。

在项目初期筛选了许多多人游戏框架:
UNET、Mirror、PUN2(Photon)、纯Socket…

UNET是Unity官方的一个多人游戏开发框架,支持局域网。
但是由于目前IPv4的形势,nat网络地址转换有一定难度,无法实现个人客户端自动转换并且与服务端实现通信。在实现任意网络节点之间的连接难度很大,并且性能不是很高。
Mirror同样是局域网框架。
Photon框架是一个企业与UNET合作的多人游戏框架,其业务广泛,支持全球联机。实际的CS架构,性能好。Photon官方服务器可以自动平衡并发问题。适合商用。不过免费服务器最大同时支持20CCU(最大20人同时在线)。以一款独立开发游戏来说,初期是足够的。

最终综合考虑下选择PUN2框架。因此项目架构实际上是多个服务端的CS架构。
自主开发的服务端提供账号存储、战绩存储/查询、资源商店等功能。
PUN官方服务端提供游戏动画同步、大厅房间等问题。(仍需学习pun框架API并进行编码)


项目分工

因涉及到个人隐私,仅做大致说明:小组成员共5人。
初步分工如下:
通信开发(前后端):2人。
Unity端开发:3人。

由于Unity游戏需要各种建模/动画素材的制作与代码编写工作,很显然占据了此项目的大部分工作。
所以在两人完成通信开发后会一起加入到游戏/GUI的制作当中。

[成员CSDN博客地址]
Eight_J
wk
Fancy145
zcx
zxy


项目具体计划

前期
需求分析,设计,开发,完成各阶段文档。
学习Unity并制作客户端。完成初期用户界面,后续迭代逐步完善。
学习socket接口,实现游戏中聊天对话功能,以及游戏信息传输同步。
学习对应MySQL接口,初步开发服务端实现账号信息记录。

中期
全面开发客户端及服务端,实现系统的整体功能,同时从各个小方面入手,保证系统画面美观,游戏人物活动流畅。开发更多游戏关卡,在满足用户需求的同时,提高整体游戏体验。
对游戏进行pun化(Photon插件多人化)。

后期
最终测试项目、修改bug。完成测试文档。

《基于Unity的2D多人乱斗闯关游戏设计与开发》--小组博客综述相关推荐

  1. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(九——pun)

    目录 一.pun介绍 二.Appid配置 三.一些必须的代码 连接: 匹配 游戏 创建和加入游戏 回调函数 发消息 Photon视觉同步组件 观察Transform 观察MonoBehaviour 远 ...

  2. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(小地图工作前期知识:摄像机)

    目录 一.前言 二.透视(Perspective) 三.正交(Orthographic) 四.实际操作 五.遇到的问题 一.前言 使用相机制作小地图时,发现Unity的Camera的投影(Projec ...

  3. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(八3、FPS——武器系统1)

    目录 一.前言 二.前期知识 三.武器系统的实现 枪械类 换弹Reload 添加开枪动画 子弹 具体枪械 制作装弹效果的动画 一.前言 武器系统的开发(枪械类.换弹操作.添加开枪动画.子弹.具体枪械. ...

  4. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(十1、FPS多人化——IK)

    目录 一.前言 二.前期知识 配置 三.使用IK控制武器 四.使用IK控制角色Aim 五.使用Photon同步IK约束 一.前言 需要制作枪口的同步,即枪口朝向的同步和枪械的绑定,这里使用IK 二.前 ...

  5. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(小地图修改完善)

    目录 一.前言 二.小地图的制作 1.小地图制作 2.小地图美化 三.小地图展示主角移动和主角方向 四.小地图放大.缩小 五.大小地图 六.大地图显示主角移动和主角方向 一.前言 由于游戏设计,场景较 ...

  6. Android 端 2D 横屏动作冒险类闯关游戏【100010436】

    Android 端 2D 横屏动作冒险类闯关游戏 摘要 随着闯关类游戏的玩法与数目的不断增加,本文所设计的一款名为<Wander In Color>的动作冒险闯关类游戏,将从一个新的角度入 ...

  7. cocos creator 2.3.2火柴人密室逃脱闯关游戏 H5+安卓+IOS三端源码

    cocos creator 2.3.2火柴人密室逃脱闯关游戏 H5+安卓+IOS三端源码,开发脚本为javaScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可直接运营. ...

  8. 基于Unity的2D小游戏 SpeedDown 开发笔记(学习bilibili@[M_Studio]的教学视频

    基于Unity的2D小游戏 SpeedDown 开发笔记(学习bilibili@M_Studio的教学视频) 主要内容:在Sunnyland游戏的设计基础上,新增了物理组件Joint系列.DrawGi ...

  9. 基于unity的2D横版游戏开发日志 小结

    前言 说是基于unity的2D横版游戏,实际上只是一个初学unity与C#新人的练手Demo,目前还处于半成状态.美术资源方面全部出自unity免费资源,经过自己的小修,大致拼出了一个游戏.代码方面, ...

最新文章

  1. 记录Android Studio项目提交到github上的出错处理
  2. Qt中ui文件的使用
  3. [elixir! #0016] 在 phoenix 项目里配置 elm
  4. mysql config type_mysql_config_editor用法举例
  5. Spring(二)、注解IOC
  6. ESX的VSWITCH坏了,如何转移到新建的虚拟交换机上?
  7. Ubuntu中tftp下载程序
  8. 大数据外部性案例分析_大数据外部性案例分析
  9. 苹果iPad air技巧教程:50个实用小技巧
  10. HFSS初探日志(六)被动毫米波成像系统馈源天线
  11. A-MPDU与A-MSDU各是什么意思
  12. 旋转编码器旋钮程序_让我们使用SwiftUI构建具有旋转手势的复古音频旋钮
  13. element-ui calendar 日历控件实现编辑假期功能以及样式修改
  14. Tomcat基本使用以及项目部署。
  15. windows 子系统 linux (WLS):启用Win10的Linux子系统
  16. 使用Jmeter进行接口测试和压力测试的配置和使用
  17. mysql分库分表篇
  18. 斐波那契回调线怎么画_知行交易学院-新手教学-斐波那契回调线的正确画法(二)...
  19. oracle初识007 序列+同义词
  20. 相当诡谲的错误,让你防不胜防

热门文章

  1. 服务器Firmware
  2. 回望2021:146交易日成交额破万亿 量化“收”A股
  3. lol重连不显示重新连接服务器,win10lol重新连接无法连接服务器重试该怎么才能解决...
  4. 网易游戏(雷火、盘古、伏羲)9月线下笔试真题(游戏开发方向)
  5. 愚人节整人软件测试,愚人节整蛊iOS应用专题 PP助手“愚”你没商量
  6. 推荐系统算法(MF、FM、CF、SVD、LFM、SVD++、TItemCF、timeSVD++、模型融合)
  7. Java工程师成神之路java基础知识之集合类(二)
  8. 鸿蒙系统烧屏,手机烧屏伤不起:用iPhone X前你需要知道这些
  9. Nginx80端口转发+域名——实现IP+端口隐藏
  10. 苹果nfc功能怎么开启_iOS 13系统中NFC标签已现身,苹果iPhone如何开启NFC功能?