设计角色扮演游戏中典型角色的类层次结构

mik*_*dev 1 c#

我正在尝试设计一个简单的角色扮演游戏,它具有典型的角色类型,如战斗机,巫师,牧师,小偷等.我需要建议一个好的方法来设置类层次结构.

我最初的尝试是创建一个类型为"Character"的类,并使"Character"中的战士,向导,牧师,派生类型.

但后来我认为创建一个"Character"类然后使用装饰模式会更好.所以说战斗机装饰,精灵装饰等.

或者有更好的方式吗?

Jas*_*n D 7

我想你可能会把这辆车放在马前.

您的第一笔业务不应该是"我如何代表一个角色?" 应该确定"我想代表什么?" 这就是说:一个工具,以帮助D20的角色创造,暗影狂奔,猫鼬旅行者,GURPS角色创造,WH:黑暗异端人物塑造; "我自己的酷d20 RPG视频游戏",一个角色和冒险/派对管理套件的软件出售,等等.在实现中性术语中定义它.

在您成功确定要制作的内容后,请创建您想要制作的详细定义.这样做的一种方法是列出所有主要名词和动词(角色,向导,战士,创建,保存,删除,复制......等),并开始理解您需要表达的各种概念之间的关系.然后取每个主要名词并将其分解为其组成部分.(字符:可以是一个类可以是一个或多个类,有一些设备,有一个强度,有点数,有魔法点,有一些主要和次要属性.)继续这个分解,直到你无法使用实现中性术语(例如整数......等).

然后回顾一下你的定义和分解,并确定是否有任何明显的矛盾陈述,如果是这样,摆脱矛盾.如果不是,则按描述的层次结构组织数据.在我的示例中,将Character,Class,Equipment和Primary Attribute作为类可能是合适的.

一定要保持所有这些"事实"的组织,并在书面和图表中明确他们的关系.从那里你应该能够开始考虑实现细节,例如类向量,其中向导派生自角色......等.

您可能还想看看其他人如何实现其他SO问题,以获得实现d20的视频游戏引擎的链接.(即Baldurs Gate)