Skip to content

DM-Star/KFA_DEMO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1、安装方式

Android运行

安装KFADEMO.apk即可

Windows运行

直接运行功夫军团.exe,运行时需要保证exe文件与下列文件在同一目录下:

  1. UnityPlayer.dll
  2. 文件夹 功夫军团_Data
  3. 文件夹 MonoBleedingEdge

2、开始游戏

单机启动

进入游戏界面后点击单击开始按钮

双人游戏

需要在局域网下进行。

一名玩家作为房主,点击创建游戏。 另一名玩家作为客户,输入房主的ip地址,点击加入游戏

如果由于公司防火墙等原因无法连接,可以尝试一方用手机开启热点给另一方连接。

3、游戏目标

拆除对手所有的核心建筑。

4、游戏方法

建造建筑

点击地图上一个空白方格,在下方操作栏中依次点选想要建造的建筑类型和建筑,在右侧点击建造即可。建议在游戏开始时优先建造资源建筑下的农场矿场

研发科技

点击地图上一个科技建筑,在下方操作栏中选择想要研发的科技,点击研发即可。

招募士兵

点击地图上一个兵营建筑,在下方操作栏中选择想要招募的士兵,点击招募即可。

5、功能分析

帧同步

双人对战时,每一位玩家必须严格按照以下顺序执行代码:创建本帧消息 -> 发送本帧消息给对手 -> 接收对手的本帧消息 -> 解析双方消息。具体代码可以在 /Assets/Scripts/Sot.cs 中查看。

技能系统

所有的技能在 /Assets/Scripts/Skill.cs 中实现,与核心逻辑解耦。

在SkillManager类中提供了CreateSkill() 函数以创建技能。创建技能时,需传入技能名、触发时机列表、触发技能时动作、触发技能条件。游戏初始化时,会将这些技能按照技能名存放在字典skilltable中,还会按照触发时机存放在skilleventtable中。

在游戏运行的核心逻辑中,埋藏了不同的时机,在每个时机都会调用skillmanager.TriggerSkills()函数,获得当前时机下的所有技能,依次判断触发条件,对于满足条件的技能进行触发。

前后台逻辑分离

游戏界面的所有操作及显示均在 /Assets/Scripts/InfoBar.cs中,界面显示的刷新频率与后台无关,与当前设备的渲染性能相关。

当玩家执行以下六种操作时,Sot会登记这些操作,并且在下一个网络帧中传给对手:

  1. 建造建筑
  2. 取消建造
  3. 研发科技
  4. 取消研发
  5. 招募士兵
  6. 取消招募

核心逻辑

/Assets/Scripts/Players.cs 中,Players::Move() 负责对每一帧进行运算。运算逻辑如下:

  1. 计算所有单位(unit)的运动,包括士兵的移动、建筑的建造过程、建筑的研发过程、建筑的招募过程、士兵发射的飞行物(projection)的飞行过程。
  2. 摧毁出界的士兵单位。
  3. 摧毁击中目标、失去目标或者超出飞行距离的飞行物。
  4. 摧毁所有死亡的士兵和建筑

战争迷雾

/Assets/Scripts/BackGround.cs 中, BackGround::UpdateMist() 负责更新每一帧的战争迷雾。

战争迷雾是宽度为0.1,高度可变的窄条。需要使用战争迷雾的地图范围是中间战场和敌方区域,宽110像素,高5行。由于所有的士兵和建筑的质心只能在格子中间,士兵和建筑的视野为以自身为中心的圆形和矩形的交集,因此每一列最多的迷雾窄条最多被5个可见范围分隔成6段。

维护一个战争迷雾窄条池,容量是1100*6。在每一帧更新时,依次遍历所有友方单位(unit),记录在某一列下的可见区间。遍历结束后,再对每一列的可见区间的起始点从小到大排序,计算出所有的阴影区间即可。

AI对手

单机游戏开始时,会随机指定AI在本局游戏中的门派。每个门派都有不同的策略,总体而言,策略被分为3个阶段。每个阶段都有一个目标,包括该阶段需要建造的建筑、需要研发的科技、需要招募的士兵。只有完成一个阶段的所有目标后,才会进入下一个阶段。至于这些目标的完成顺序,则是随机而定。详细的代码可以查看/Assets/Scripts/AI.cs。

6、策划美术须知

所有的策划和美术资源均放在Assets/StreamingAssets中,修改数值或者美术资源时不需要在Unity编辑器中进行任何修改,但是需要重新生成项目。

About

2021魔方超新星游戏DEMO-功夫军团

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages