如何设计一个Unity3D狼吃羊游戏,吸引玩家长时间沉浸其中?

摘要:简介 中文名:狼与羊 英文名称:Wolves&Sheep 游戏类型:休闲棋类 玩家人数:单人或双人 游戏下载:Windows、Android 游戏描述:童年时与小伙伴常玩的一种游戏,游戏简单易懂而又变化多样。 第一
简介   中文名:狼与羊   英文名称:Wolves&Sheep   游戏类型:休闲/棋类   玩家人数:单人或双人   游戏下载:Windows、Android   游戏描述:童年时与小伙伴常玩的一种游戏,游戏简单易懂而又变化多样。 第一节 游戏规则   棋盘可以用小石头在泥土里上随手就画出来了,棋子中的狼和羊可以用树枝或者小石子代替。   准备   找两块大点的石头当作狼,二十四块小石头是羊   狼和羊必须放置在网格的交叉点上   每个交叉点上最多有一个棋子   开局   两个狼分别放在上下两个脖子上,羊 8 个放在中间一圈的交叉点上,狼先走羊后走交替进行   狼跳过羊就把羊吃掉了,狼只能沿图上的直线跳且只能跳过一个点,不吃羊则只能走一格   羊是先放不能走,每次放一只,羊全部放完才能走,也是每次走一格   胜负   如果狼没地方可走了,羊赢得比赛   狼把羊吃光或羊认输,狼赢得比赛 图1-1 开局 第二节 程序设计   涉及本游戏核心逻辑的类库最先在 WPF 平台上完成编码和测试。   基础功能   棋盘表示:使用合适的数据结构表示棋盘   移动判断:检测用户走棋是否符合移动规则   用户视图:视图显示棋盘和检测用户的输入   对弈模式   人人对弈:支持双人轮流下棋   人机对弈:机器人难度级别可选   对弈功能   提示:由AI给出走棋提示   悔棋:可返回上一步局面   终止:立即终止比赛 图2-1 终止比赛 第三节 AI算法   AI 搜索算法借鉴中国象棋中成熟的深度优先搜索算法。   搜索算法   Alpha-Beta 剪枝   局面生成   基于规则逐步产生   局面评估   棋子基础子力:每个棋子具有一个基础价值   棋子位置估值:评估棋子在不同位置的价值   棋子关系估值:评估棋子间相互作用关系,例如对较多羊造成威胁的狼的价值较高 图3-1 搜索算法调试输出 第四节 Unity3D  使用 VisualStudio 开发的游戏核心逻辑类库可以编译为 DLL 文件,然后在 Unity3D 项目里引用它。   如何引用 .NET 类库   项目属性->应用程序->目标框架,下拉列表中选择 .NET Framework 3.5   成功编译后将输出目录下的文件全部复制到 Unity 项目的 Assets\Plugins 文件夹   Unity3D 将自动完成导入,最后,在 C# 脚本中导入上述类库项目的命名空间即可   若是 VB.NET 项目,需要手动编辑 .vbproj 文件以开启 VBRuntime Embed 编译模式 <PropertyGroup> <VBRuntime>Embed</VBRuntime> </PropertyGroup>   通用的游戏脚本   背景音乐:切换场景仍能够连续播放的音乐点击查看代码   元素缩放:支持用户在游戏内缩放UI元素点击查看代码   双人联机:支持局域网创建游戏房间进行联机游戏点击查看代码 图4-1 外部类库项目属性 附录   象棋百科全书:计算机博弈   GitHub(WPF):WolfGame.NET   GitHub(Unity3D):WolfGame.Unity