游戏对象

1. 地块方格

  • 地形:山脉、丘陵、乔木林、灌木林、平原、河流、湖泊、海洋、雪原、沼泽、沙漠、暗礁、滩涂、岛屿等等(需完善)
  • 设施:铁路、公路、桥梁、机场、城市、村庄、岸防炮、要塞、废墟等等(需完善)
  • 移动力需求
  • 工事等级(影响防御效率)
  • 隐匿性(影响防御效率)
  • 天气(如果地图比例尺太大可能不同区域的天气不一样,因此天气与每个地块方格相关联)
  • 海拔、气温、风向、风速(影响细菌武器、化学武器、核武器破坏力)
  • 各方空中遮断度(影响补给效率、部队转移效率等)
  • 各方侦查度:占据方格的势力及友军侦查度100%,临近方格有一定的侦查度,侦查度达到一定值可以发现稍大编制的部队,侦查度逐渐提高依次可见部队番号、部队属性等等,侦查度下降后保留最后一次可见的信息(也就是说有可能会因为侦查度太低而看到虚影)。
  • 胜利点数(VP)如果此地是战略要地,可设胜利点数,占领势力可获得胜利点数。
  • 归属方
  • 拥堵惩罚
  • 其他

2. 游戏环境

  • 气候
  • 地图比例尺
  • 回合时间跨度
  • 总回合数限制
  • 各方胜利条件

3. 游戏势力

  • 势力名
  • 胜利点数

4. 算子(部队)

  • 名称(部队番号)
  • 算子类型(步兵、摩步、装甲兵、坦克、炮兵、火箭炮兵、远程导弹、防空部队、工程兵、特种部队、游击队、宪兵队、指挥部、直升机、预警机、攻击机、空优飞机、轰炸机、导弹艇、护卫舰、驱逐舰、巡洋舰、战列舰、航母、运输单位等等需要完善)
  • 补给度
  • 备用补给
  • 士气
  • 移动力
  • 攻击力(软目标、轻装甲、重装甲、低空、高空)
  • 防御力(软目标、轻装甲、重装甲、低空、高空)
  • 人员装备表
  • 防御等级(对防御作战加成)
  • 战斗策略(最小损失、普通、最大损失)

5. 人员装备

  • 类型
  • 战斗力
  • 装甲/易损度
  • 补给消耗力
  • 移动力

决策时机

1. 回合开始

  • 更新补给度
  • 计算空优、遮断度等
  • 天气变化

2. 回合结束

  • 更新补给度
  • 计算胜利

3. 特定回合

  • 触发历史事件

4. 算子动作

  • 移动前:根据地形、空中遮断度、移动力需求等计算移动成功率
  • 移动后:触发事件
  • 攻击:根据地形、隐蔽度、工事等级、防御等级、补给度、士气、攻击力等等计算战斗结果
  • 防御:进入防御状态,或是更高成都的防御状态
  • 其他

辅助功能

1. 随机骰子

2. 可持久化存储的自定义字段

开源战棋 SLG 游戏框架设计思考(二)规则系统要考虑的因素的更多相关文章

  1. 开源战棋 SLG 游戏框架设计思考(一)简介和游戏引擎

    战棋 SLG 游戏 SLG(Simulation Game)游戏是模拟游戏的简称.战棋类的SLG有两种:一种是 War Game 中的兵棋推演分支,常见的游戏有战争艺术3(TOAW3 — The Op ...

  2. 基于cocos2d-x的游戏框架设计——李成

    视频:http://v.youku.com/v_show/id_XMzc5ODUyMTI4.html?f=17330006 网易科技讯 3月31日,第四届CocoaChina开发者大会暨Cocos2d ...

  3. 游戏框架设计中的。绑定binding。。。命令 command 和消息message 以及MVVM

    游戏框架设计中的.绑定binding...命令 command 和消息message

  4. 基于python的接口测试框架设计(二)配置一些参数及文件

    基于python的接口测试框架设计(二)配置一些参数及文件 我这里需要基于我的项目配置的主要是登陆参数.以及baseURL ,把这些放在单独的文件里  毕竟导入的时候方便了一些 首先是url 图略 建 ...

  5. Unity《ATD》塔防RPG类3D游戏架构设计(二)

    目录 <ATD> 游戏模型 <ATD> 游戏逻辑 <ATD> UI/HUD/特效/音乐 结语 前篇:Unity<ATD>塔防RPG类3D游戏架构设计(一 ...

  6. Phaser开源2d引擎 html5游戏框架中文简介

    功能特点(Features) 易维护代码(Easy Asset Loading) Phaser可以加载图片,音频文件,数据文件,文本文件和自动解析精灵图和纹理地图集数据(出口纹理封隔器或Flash C ...

  7. 01 Taro_Mall 开源多端小程序框架设计

    项目介绍 Taro_Mall是一款多端开源在线商城应用程序,后台是基于litemall基础上进行开发,前端采用Taro框架编写,现已全部完成小程序和h5移动端,后续会对APP,淘宝,头条,百度小程序进 ...

  8. Unity 游戏框架搭建 2018 (二) 单例的模板与最佳实践

    Unity 游戏框架搭建 2018 (二) 单例的模板与最佳实践 背景 很多开发者或者有经验的老手都会建议尽量不要用单例模式,这是有原因的. 单例模式是设计模式中最简单的也是大家通常最先接触的一种设计 ...

  9. Unity 游戏框架搭建 2019 (二十三) 备份与版本号&危险的操作

    先列出上一篇的总结: 要做的事情: 备份:导出文件,并取一个合理的名字. 遗留问题: 第八个示例与之前的示例代码重复,功能重复. 约定和规则: 每个示例在 QFramework 目录下创建一个文件夹, ...

随机推荐

  1. JavaScript之bind,call,apply

    参考: http://rangercyh.blog.51cto.com/1444712/1615809 function foo(a,b) { this.x = this.x + a + b; } / ...

  2. mount挂载问题

    安装nfs-utils即可

  3. 读书笔记<白帽子讲web安全>

    2016年3月24日 09:34:32 星期四 ddos攻击: 一种: 随机生成ip, 去建立链接, 由于http/tcp握手协议原理, 发送应答报文时因为ip无效会导致等待重发, 这种行为可以通过电 ...

  4. NSString相关操作

    //创建一个字符串对象 NSString * str_1 = @"Hello"; //字面量方法 ; NSString * str_2 = [NSString stringWith ...

  5. c语言libcurl库的异步用法

    multi接口的使用会比easy 接口稍微复杂点,毕竟multi接口是依赖easy接口的,首先粗略的讲下其使用流程:curl_multi _init初始化一个multi curl对象,为了同时进行多个 ...

  6. .NET 获取类型中的属性

    解决方案      通过反射的方式获取类型中的所有属性. 引用命名空间 using System.Reflection; 实体类 public class User { private string ...

  7. ios升级<注:来着微信平台>

    <来着微信平台>  http://mp.weixin.qq.com/s?__biz=MjM5NTIyNTUyMQ==&mid=2709545194&idx=1&sn ...

  8. 几年前做家教写的C教程(之四专讲了指针与汉诺塔问题)

    C语言学习宝典(4) 指针:可以有效的表示复杂的数据结构,能动态的分配动态空间,方便的使用字符串,有效的使用数组,能直接处理内存单元 不掌握指针就没有掌握C语言的精华 地址:系统为每一个变量分配一个内 ...

  9. Mybatis实现数据的增删改查(CRUD)

    什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架. MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索.MyBat ...

  10. [leetcode] 题型整理之二叉树

    94. Binary Tree Inorder Traversal Given a binary tree, return the inorder traversal of its nodes' va ...