课程介绍
- 课程简介
- 课程起源
这个项目是我开发的一款独立游戏的附属产物。
课程在:Unity中文课堂
喜欢玩“模拟经营类”游戏的很多玩家都玩过模拟经营类APP - “淘金城镇”。这个游戏的内容是游戏中玩家经营一个金矿加工厂,通过不断升级合成逐渐提高整体产出,让玩家感觉乐趣横生,对游戏欲罢不能。如下截图:
对于玩家来说不仅能从游戏中找到乐趣,还能积累元宝赚钱并提现到微信钱包里。游戏中丰富的玩法让我觉得很有意思,故此我以这个游戏概念为基础开发出了“淘金城堡”这款游戏,为了能支持我的开发我在开发的同时将整体项目录制成了视频教程并内含源码,然后以一定的价格出售给大家,希望能够支持我的开发费用。
- 教程的目的
本教程不同于别的教程的特点是:从零代码、零UI,通过一行一行的代码搭建起我们的游戏工程。并在各个重要的开发结点进行工程的保存,以帮助大家更好的学习每一阶段的内容即大家可以跳转到任意项目阶段亲自上手按照视频教程进行学习开发.
另外,这是我的休闲游戏的框架模板,所以我会按照线上游戏的开发模式进行制作,我会在制作的每一功能阶段详细测试每一功能,然后再进行下一阶段的开发,以保证代码的精良。
游戏将运行在android和IOS平台,并通过各种玩法嵌入多个广告,并最终通过广告收益分成的方式吸引众多的玩家进入游戏,同时开发者也可以拿到游戏收益。即游戏最终是要商业化,且能够在多个平台上发布如TapTap、华为、小米和好游快报等等平台。
内容方面就是以类似”淘金城镇”的玩法开发一款新的氪金游戏,喜欢这类游戏的游戏开发者可以从教程中学习到专业的游戏开发方法,并可以以教程的源码为基础进一步开发出自己特有的游戏产品。
所以,这是一套针对线上游戏的开发模板,希望帮助喜欢做游戏的人节省他们的开发成本。
二、课程内容
整体功能
玩家乘坐名称为“太空城堡”的宇宙飞船在浩瀚的宇宙中探索,探寻宇宙中的陨石寻找有价值的矿物,当探寻到后出动小型宇宙飞船进行抓捕并带回“太空城堡”,在城堡内有工人进行打矿、运输,在锻造室进行矿物合成,矿物可以直接兑换成金币,然后将金币兑换成元宝,元宝则可以直接转换成人民币转入微信进行提现。
项目周期分为几期:目前完成了第一期内容,后面会根据项目的受欢迎程度和我的时间安排更新后面的内容,当开始后期的开发时我会分功能段进行课程的更新,所以不用等到第二期内容全完成就会看到内容。
另外,根据情况,随着后期的项目开发,会适当的提高课程的价格,但前期购买课程的朋友不会受影响。
本教程素材通过个人项目及网络收集(正规途径)。
我们的游戏配置解决方案采用luban,客户端和服务器端的数据的组织都会用到这个。luban是一个强大、易用、优雅、稳定的游戏配置解决方案。它设计目标为满足从小型到超大型游戏项目的简单到复杂的游戏配置工作流需求。luban可以处理丰富的文件类型,支持主流的语言,可以生成多种导出格式,支持丰富的数据检验功能,具有良好的跨平台能力,并且生成极快。
基于MVC的UI框架:
前端部分使用游戏制作利器-Unity3D制作,后端采用众多游戏大厂使用的游戏服务器云风的Skynet,后台数据库采用mongodb或mysql。
游戏热更部分:为了游戏上线后可以很容易的修改Bug,教程采用了最新的代码及资源的热更技术华佗HybridCLR和addressables,华佗HybridCLR的优势是代码的编写不必使用第二语言lua,开发人员不必在两种语言C#和lua语言之间来回切换和两种语言的交互,也帮助开发人员节省了学习成本,节省了开发人员的技术难度,也节约了时间成本。
在项目的开发过程当中我们会以TapTap平台为例,将它的SDK加入到我们的项目,并了解如何发布到这个平台。然后我们还会植入最重要的广告部分如“穿山甲”,也将它的SDK加入到我们的项目中。
由于我们最终是发布到android手机平台,所以我们会对Unity如何发布到些平台的步骤进行详细解释。
第一期内容
- start开始场景制作,taptap登陆、防沉迷和整个taptap平台注册、登陆、SDK集成的制作,steam登陆伪代码的制作
- 基于MVC的UI框架开发及DEMO的使用教程
- game主场景主页面制作:“太空城堡”号宇宙飞船的宇宙探路航行,在燃料充足的情况下出动飞机抓取有用的矿石,对于带回的矿石会有打矿工人进行锻造,产出的金币会有流水线工人进行运输,隔一段时间搜集好金币进行页面奖励;主页面所有按钮、模型的设计和制作
- “我的信息”页面窗口的制作:ID、昵称、社交信息、实名认证、帮助中心、用户协议等等的UI部分的制作
- 燃料供应弹出窗口的制作:看广告补充飞机燃料,看一次增加一定的时间燃料,可多次看,最多6次;注意:游戏中必须得有燃料,有了燃料飞机才能出去进行陨石抓捕
- 游戏音效弹出窗口:仅UI和效果部分
- 模拟广告部分的制作及“燃料供应弹出窗口”中的使用
- 背景音乐、奖励音乐、金币奖励特效的制作
- 对象池的介绍及应用:陨石生成、抓捕陨石矿飞船的生成的应用场景
第二期内容
具体功能
- 完成以上第一期内容的页面的业务逻辑功能
- 幸运转盘:看广告,玩幸运转盘,赚取奖励
- 矿物合成:通过打矿搜集到的稀有矿物进行矿物合成,赚取更高价值的金币
- 工人:通过碎片和多个人合成新的人物,使打矿更有效率,道贺金币的产出
- 太空矿区:玩家通过升级进入到更高级别的太空区域进行采矿
- 玩赚:通过玩小游戏再看广告,可以赚取更多的金币
- 邀请:邀请你的好友一起进行游戏
- 广告集成:集成市面上常用的“聚合广告”,技术选择方面力求贴近当前的最新技术
- 后台及数据处理:(1)本地数据的存储,有部分数据是存储在本地的;(2)网络数据的传输及实现,有用户数据 - 等级、昵称、ID、经验值、金币和元宝数量、你的矿物工人等等。技术方面后端采用众多游戏大厂使用的游戏服务器云风的Skynet,后台数据库采用mongodb或mysql。
- 资源服务器:资源更新和代码热更将采用华佗HybridCLR和addressables,“addressables”是Unity最新的资源打包方式,而“华佗HybridCLR”是以C#的方式热更新我们的代码,相比lua热更新来说方便代码的统一。