回合制战棋demo01-属性
从零开始设计回合制战棋。这是关于属性的介绍。
属性系统
属性系统不是所有游戏中都必需的系统。但在具有 rpg 标签的游戏中,这是不可缺少的一环。属性是一个单位最直观的体现。
- 玩家通过属性的变化来调整自己的游玩策略。
- 制作者通过属性的变化来设计玩家的游戏体验,最主要涉及的体验就是成长。
一个好的属性系统应该如何设计? 在谈论一个设计时,首先需要明确的是需求是什么? 需要一个属性系统管理所有的属性。管理就是增删改查。在谈论属性系统的各项操作之前。先要弄清楚属性是什么?
属性
属性在任何游戏中最直观的体现就是数值,它可以是浮点数,也可以是布尔值。属性唯一的操作就是属性的更改。 接下来的问题是有几种对属性的更改?
- 数值修改
- 覆盖
- 百分比修改
定义一个属性修改器专门用来修改属性。这里可以使用接口,但是属性的更改通常是可以枚举的。
属性的更改分为四种:
- 基础值的更改
- 添加更改器
- 移除更改器
属性集
这是单位属性的集合。每个属性除了受到自身属性的限制,还会受到其他属性的影响。通过在单个属性变化的前后设置回调,可以扩展出需要自己的属性性能。
属性集的主要功能:
- 属性集合的初始化
- 设置属性的当前值
- 设置属性的基础值
- 设置修改器
如何实现属性变化之间的回调