介绍

使用Unity3D开发,总代码6000+行,主要是一套简单的代码框架,具备一定的扩展性。游戏中填充了第一关的内容以展示功能。(仍然有许多改进空间)

战斗系统

在动画中添加事件从而调用伤害判定函数,使用Cast函数进行伤害检测

交互系统

使用Physics.Raycast()检测屏幕中央可交互物体,目前游戏中包含对话物、拾取物、宝箱三类可交互物体

物品系统

ScriptableObject实现的物品配置

通过实现IBeginDragHandler、IDragHandler、IEndDragHandler、IPointerDownHandler、IPointerEnterHandler、IPointerExitHandler、IPointerClickHandler七个接口,从而实现拖动更换物品所在的物品格、光标悬浮时显示物品详细信息、点击以使用/购买/出售物品的功能

AI系统

使用Navigation来对AI进行控制,从而在移动时自动避开障碍物。目前包含四类AI:

  • 士兵:通过判断与玩家之间的距离改变行为模式,远距离时在自身一定范围内游走待机,中距离时主动向玩家移动,近距离时攻击或后撤
  • 野猪:在初始位置周围选取固定坐标并来回游走,在受到攻击后会改变移动速度进入奔跑状态
  • 野兔:类似于野猪,但在玩家靠近时便会逃走
  • 村民:在配置好的路径点之间来回移动,并在对应位置播放待机动画

展示

3DRPG项目展示

一个基础的3DRPG游戏相关推荐

  1. golang游戏开发学习笔记-开发一个简单的2D游戏(基础篇)

    此文写在golang游戏开发学习笔记-创建一个能自由探索的3D世界之后,感兴趣可以先去那篇文章了解一些基础知识,在这篇文章里我们要创建一个简单的2D游戏场景以及配套的人物,并实现人物运动和碰撞检测功能 ...

  2. python写一个游戏多少代码-使用50行Python代码从零开始实现一个AI平衡小游戏

    集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何用 50 行 Python 代码创建一个 AI,使用增强学习技术,玩耍一个保持杆子平衡的小游戏.所用环境为标准的 OpenAI Gym, ...

  3. c++代码小游戏_用Python编写一个打乒乓球小游戏

    Python功能十分强大,从科学计算到人工智 能,当然Python还可以编写游戏代码喔,虽然不是主流,但是是否应该了解一下呢?茶余饭后,编写一个很有趣的小游戏,编程半小时,能玩一整天,不断的调整游戏参 ...

  4. 这是我第一次使用代码创建出一个窗口【python 游戏实战 01】

    前言 本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题.此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课 ...

  5. 如何制作一个基于Tile的游戏 2 Cocos2d-x 2 0 4

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在第一篇 ...

  6. html5游戏开发-零基础开发RPG游戏-开源讲座(四)

    了解上三篇的内容请点击: html5[color=rgb(68, 68, 68) !important]游戏开发-零基础开发RPG游戏-开源讲座(一) http://www.html5cn.org/a ...

  7. c语言min函数_C语言探索之旅 | 第一部分第十课:第一个C语言小游戏

    内容简介 前言 准备工作和建议 我的代码 改进方案 第一部分第十一课预告 1. 前言 上一课是 C语言探索之旅 | 第一部分第九课:循环语句 . 经过前面这么多课的努力,我们终于迎来了第一个比较正式的 ...

  8. UE4-如何做一个简单的TPS角色(一)-创建一个基础角色

    打开UE4进入创建项目界面,选择游戏,第三人称项目进入下一步 按照以下配置创建一个项目,命名任意,一定要包含初学者内容!!!关系到后面素材使用 项目创建完成后,先创建一个Level文件夹,在文件夹中创 ...

  9. python 2048游戏的设计_Python练习:100行代码实现一个简易的2048游戏

    一.任务目标 1.一个在命令行下的2048游戏 2.主要实现功能:判断游戏是否结束:在随机空白位置生成新的数字:上下左右四个方向上进行平移数字并将能合并的数字进行合并:接收键盘输入:将数字阵列显示到命 ...

最新文章

  1. cpc无法获取系统office信息_智能云信息发布系统解锁信息获取新方式
  2. JDK 竟然是这样实现栈的?
  3. 如何创建高质量的TypeScript声明文件(六) - 示例
  4. JZOJ 3871. 【NOIP2014八校联考第4场第1试10.19】无聊的游戏(game)
  5. HBase建表高级属性,hbase应用案例看行键设计,HBase和mapreduce结合,从Hbase中读取数据、分析,写入hdfs,从hdfs中读取数据写入Hbase,协处理器和二级索引
  6. java 短链跳转原理_给你代码:短链接生成原理
  7. Linux中最受欢迎的邮件传输代理(MTA)
  8. 一种非常实用的系统掉电检测和保护电路---摘自:周立功单片机
  9. LeetCode 263. Ugly Number
  10. 设置背景图片的两种方式,并解决手机端背景图片高度自适应问题
  11. python变量的数据类型
  12. Android实践--监測网络状态
  13. 随机数生成器python_Python中的随机数生成器
  14. 转:Subversion TortoiseSVN: Installed and started on Windows 2003 server and local machines
  15. c语言英文字母降序排列,英文单词排序
  16. 优秀课程案例:使用Scratch制作打弹球游戏3-过关增强版
  17. Python 对象烤地瓜
  18. python中len是什么函数_总结Python中len()函数的使用实例
  19. 天翼数字生活C++客户端实习
  20. 美国国家航空航天局NASA的软件项目开源啦~

热门文章

  1. 男性的12种健康食物!
  2. ios wallet开发_Wallet app-想知道钱都花哪去了?试试它吧#iOS #Android
  3. 应急响应之日志排查方法,Windows篇
  4. 2017秋-软件工程第五次作业(1)-【探路者】团队选题展示(文案+美工)
  5. 攻防世界 base64stego
  6. 报错These relative modules were not found:
  7. 我的周记2——“天道酬勤
  8. pycharm 改回插入模式
  9. 尚医通-医院详情功能(二十七)
  10. catia dse_DSE Graph评论:Graph数据库起双重作用