Class RPG(角色扮演游戏)类图示例
有人知道我在哪里可以找到RP游戏开发类图的例子吗?类似的东西会非常有用。我不是在寻找我可以随意复制的东西,而是在尝试用铅笔写下我自己的类时,为我发现的问题绘制各种解决方案的不同示例。Class RPG(角色扮演游戏)类图示例,class,project-planning,class-diagram,Class,Project Planning,Class Diagram,有人知道我在哪里可以找到RP游戏开发类图的例子吗?类似的东西会非常有用。我不是在寻找我可以随意复制的东西,而是在尝试用铅笔写下我自己的类时,为我发现的问题绘制各种解决方案的不同示例。 <tongue_in_cheek_mode_because_it_is_friday> 首先: ---------------- -------------- | Creature |
<tongue_in_cheek_mode_because_it_is_friday>
首先:
---------------- --------------
| Creature | | Item |
|--------------| |------------|
| Name | | Name |
| Hp | | Value |
| Abilities |--------------------| Weight |
|--------------| --------------
| Attack |
----------------
^
|
----------------------
| |
---------------- ----------------
| Hero | | Monster |
|--------------| |--------------|
| Level | | |
|--------------| |--------------|
| KillMonster | | AttackAndDie |
| GrabTreasure | | DropTreasure |
---------------- ----------------
</tongue_in_cheek_mode_because_it_is_friday>
--------------------------
|生物| |物品|
|--------------| |------------|
|姓名| |姓名|
|Hp | |值|
|能力-重量|
|--------------| --------------
|攻击|
----------------
^
|
----------------------
| |
---------------- ----------------
|英雄| |怪物|
|--------------| |--------------|
|标高| ||
|--------------| |--------------|
|杀死怪物| |攻击并死亡|
|抢夺宝藏|
---------------- ----------------
这样的东西怎么样:
以下是一些其他图表:
- 生物、房间和衍生项目 来自WorldEntity,带WorldEntity 组合排列的对象 结构,以便项目可以在 其他由生物携带的物品, 住在房间里的人。实施 WorldEntities的访问者模式 可能会很好
- CreatureType和ItemType类 包含的“类”数据 个别生物及物品 实例,这些实例引用了它们的 对应的“类型”对象。(例如:基地 前者的生命值和统计数据, 当前生命点和瞬态效应 在后者中)。我可以将这些实现为 获取的属性的原型列表 复制到生物或物品实例时 它们是被创造出来的。您可以实现属性 通过“父”属性继承,以便 一个特定的地精生物实例可能与 “勇士地精”CreatureType,其中包含 “通用地精”CreatureType的父引用。等等李>
- 属于其房间的出口,并且 单向,其中详细说明了 旅行、各种通行条件等
- 包含连接的房间组的区域 通过某种逻辑组织
- 一个产卵类来指示生物的位置 并创建项目实例(例如,哪个房间, 或者在什么坐标),当它们被创建和 频率是多少 哪些是CreatureType和ItemType。你可能有 这里有一些逻辑可以让事情随机化
- 咒语、技能、能力等。 都派生自一个基本动作类 或指定先决条件的接口 (例如,当前位置、法力点、一些 技能的学习程度等)。正常的 命令和动作也可以放在这里,因为它们 通常也有一些要求 (例如,“睡眠”命令要求您不 已经睡着了。)
- 一个FutureEvent类,本质上是一个 您推送到优先级队列上的回调 将来执行。你可以用这些来 安排战斗回合,拼写冷却时间, 昼夜循环,随你喜欢
- 名称->值对的哈希/映射/字典 玩家和物品统计。不是类型安全的,但是 稍后您将欣赏这种灵活性。在我的 有制作stats成员变量的经验是很重要的 可行但不灵活,且具有专业性 “属性”类成为一个复杂的类 调试时的噩梦
- 包含统计名称的修改器类型 和修改值(例如+10、+15%)。这些 在使用时添加到你的生物中 (例如通过法术效果,或通过挥舞 一件被施了魔法的武器)然后脱光衣服 通过定时未来事件或其他事件,如 作为正在执行的命令
- 特定于游戏的类,如PlayerClass或 PlayerRace,每一个都描述了一个玩家的等级 (如战士、巫师、小偷)或种族(人类、精灵、, dwarf)并设置起始状态值和限制, 技能可用性列表、特殊能力等
- 不同的基本播放器接口类 取决于你的实际游戏类型。你可以 具有图形游戏的渲染类,或 在泥泞中,您可能有一个连接类 反映到播放器客户端的TCP连接。 试着把所有的游戏逻辑都排除在外
- 脚本接口。你的大部分命令,咒语, 而生物AI则可以通过 一个像样的脚本接口,可以保证编译时间 我也是。它还允许进行一些出色的游戏内调试 和诊断能力
这将是我所使用的基本高级结构。
您可能需要考虑组件实体系统而不是传统继承层次结构;它们倾向于更灵活地适应某些类型的更改,使工具(例如world editor)的开发更容易,并为并行化提供了机会,否则可能不明显或不容易 许多现代游戏引擎正在从“单一类对象”(或类实体,无论什么)转向“组件包”方法 周围有很多书和文章。一般来说:- 该系列(显然第5卷和第6卷都有组件文章,我认为第2卷也可能有组件文章)
- 网站
+-----------------------------+ V | [Actor] ------- [Allegiance] ----+ - risk comfort - weight - temerity