Skip to content

Commit cbb4f13

Browse files
committed
Added some basic high level genre summaries
1 parent 30ceb38 commit cbb4f13

File tree

2 files changed

+97
-0
lines changed

2 files changed

+97
-0
lines changed
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
@page "/other/scenarios"
2+
3+
<Markdown>
4+
## Game/Genre Scenarios
5+
6+
As mentioned throughout these examples, this framework is meant to provide the building blocks to be able to express almost any kind of RPG game, so with that in mind lets look at some common types of RPG games and the sort of high level view of how we would express those games with this library.
7+
</Markdown>
8+
<br />
9+
<div class="columns">
10+
<div class="column is-half">
11+
<Markdown>
12+
### Action RPG - i.e Diablo, Torchlight
13+
14+
These sort of games are generally about looting procedural items and fighting somewhat procedural enemies, the combat revolves around damage derived from ability/item synergies based on affixes/powers on powerful items.
15+
16+
#### Overall Approach
17+
- Games often ignore notion of `Race`
18+
- Unique Player `Class` templates, scaling damage/defense effects off given attributes
19+
- Paragon board is collection of `Effects` with `Requirements` for previous nodes tracked against `Entity`
20+
- `Enemy` templates use `Procedural Effects` for level scaling
21+
- `Classes` has access to various `Abilities` but can only actively use X amount
22+
- `Items` are generally procedural with unique `Effect Types` to provide affix/powers
23+
- `Items` can use `Modifications Allowances` to support adding Gems, which wrap `Effects`
24+
- `Inventory` is slot based with fixed slots with additional `Size` metadata, also added to `Item Templates`
25+
- `Equipment` generally matches that of `Fantasy Genre` equipment slots
26+
- `Quests` can express repeatable dynamic events
27+
- `Attacks` are often `Ability` based with `Cooldowns`
28+
</Markdown>
29+
</div>
30+
<div class="column is-half">
31+
<Markdown>
32+
### CRPG - i.e Baldur's Gate, Pillars of Eternity
33+
34+
These sort of games are generally more about story and characters, the combat often split into melee or spell based abilities with party based mechanics.
35+
36+
#### Overall Approach
37+
- `Race` should be used and provide unique bonuses
38+
- `Class` templates have fixed `Effects` and can often use `MultiClass` functionality
39+
- Notion of Feats/Perks can be expressed via unique `Effects` tracked against `Entity`
40+
- `Enemy` templates use `Scaled Effects` for level scaling
41+
- `Abilities` are often fixed per `Class`
42+
- `Item Templates` are generally static
43+
- `Inventory` is weight based
44+
- `Quests` are unique and main focus of the narrative drive
45+
- `Factions` are important as part of narrative decisions
46+
- `Attacks` are a mix of base attacks and `Ability` with custom `Usage` counts metadata
47+
</Markdown>
48+
</div>
49+
</div>
50+
<div class="columns">
51+
<div class="column is-half">
52+
<Markdown>
53+
### JRPG - i.e Wild Arms, Grandia
54+
55+
Like CPRGs they are more story based but often have simpler `Character` mechanics often have more of a fixed
56+
57+
#### Overall Approach
58+
- Games often ignore notion of `Race`
59+
- `Class` templates have fixed `Effects` and can often use `MultiClass` functionality
60+
- Notion of Feats/Perks can be expressed via unique `Effects` tracked against `Entity`
61+
- `Enemy` templates use `Scaled Effects` for level scaling
62+
- `Abilities` are often fixed per `Class` and known as Spells/Skills
63+
- `Item Templates` are generally static
64+
- `Inventory` is unlimited
65+
- Games often ignore notion of `Quests` but likely tracks game trigger/progress via `GameState`
66+
- `Attacks` are a mix of base attacks and `Ability` with Mana Cost
67+
</Markdown>
68+
</div>
69+
<div class="column is-half">
70+
<Markdown>
71+
### Souls-like - i.e Dark Souls, Elden Ring
72+
73+
Like CPRGs they are more story based but often have simpler `Character` mechanics often have more of a fixed
74+
75+
#### Overall Approach
76+
- Games often ignore notion of `Race`
77+
- Games often ignore notion of `Class`
78+
- Level up attributes are custom `Effects` tracked against `Entity`
79+
- `Enemy` templates are generally static
80+
- `Items` would scale damage/defense `Effects` based on attributes
81+
- Spells would be expressed as `Abilities`
82+
- `Item Templates` are generally static
83+
- `Inventory` has no limit
84+
- Games often ignore notion of `Quests` but likely tracks game trigger/progress via `GameState`
85+
</Markdown>
86+
</div>
87+
</div>
88+
<br />
89+
90+
@code {
91+
92+
}

src/OpenRpg.Demos.Web/Shared/NavMenu.razor

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,11 @@
8181
<li><NavLink href="advice-engine/applicator-components" ActiveClass="is-active">Applicators</NavLink></li>
8282
<li><NavLink href="advice-engine/example-setup" ActiveClass="is-active">Example Usecase</NavLink></li>
8383
</ul>
84+
85+
<p class="menu-label">Other</p>
86+
<ul class="menu-list">
87+
<li><NavLink href="other/scenarios" ActiveClass="is-active">Game/Genre Scenarios</NavLink></li>
88+
</ul>
8489
</aside>
8590
</CardSection>
8691

0 commit comments

Comments
 (0)