4K Proposal
https://i.ibb.co/jRXsY6x/diablo-4-proposal-1-skills-matrix.jpg
Summary
Don’t: Trees
Do: Virtual Matrices
Why: Billions of combinations, Better UI (compact, scalable, responsive)
Skills Matrix
Rules
- All skills and runes available at Level 1
- Maximum points per skill can be exceeded using items
- Point cancellation is free and immediate (adaptative build)
- For gold sinks: Search for « nwn2 crossroad keep »
https://www.google.com/search?q=nwn2+crossroad+keep
« AND » runes examples
On hit
- Pummelers (5) : +5% Hit: Stun (1s)
- Freezers (5) : +5% Hit: Freeze (1s)
- Brawlers (5) : +5% Hit: Immobilize (1s)
- Mockers (5) : +5% Hit: Berserk (1s)
- Plaguers (5) : +5% Hit: Poison (1s)
- Injurers (5) : +5% Hit: Bleed (1s)
- Carvers (5) : +5% Hit: Generate Corpse
When hit
- Quickeners (5) : +5% When Hit: Accelerate (1s)
- Ghosters (5) : +5% When Hit: Bone Spirit
- Breakers (5) : +5% When Hit: Break CC
- Brothers (5) : +5% When Hit: +1 Skeleton (3s)
- Crushers (5) : +5% When Hit: Next hit is crit
- Armorers (5) : +5% When Hit: Harden (3s)
- Sharders (5) : +5% When Hit: Bone Shards
No hit condition
- Skirmishers (5) : x5% Damage to CC
- Slaughterers (5) : x5% Attack Speed
- Smashers (5) : x5% Critical damage
- Zweihänders (5) : x5% Area damage
- Spikers (5) : x5% Skeleton thorns
- Followers (1) : Share your damage
- Grounders (1) : Risen from ground
Explainer
Skills selection
- Matrices rather than Trees
- Freedom rather than Linearity
OR VS AND
- Don’t force OR choices (developers choice, OR inheritance)
- Do: Allow to check all possible boxes (players choice, AND traits)
- Available points, max points per skill are already a big restriction
Tree VS Virtual Matrix
- Trees (oriented graphs) have
- Physical links (UI don’t scale, invasive)
- Graph dependencies (slow cancel, few combos)
- Virtual Matrices have
- Virtual links (scalability, compactness, density)
- No dependency (granularity, composability, decoupling, billions of combinations)
- Mathematics
- Let N be the number of nodes, L the number of links, C the number of combinations then L = N x (N - 1) / 2 and C = N! (also called Factorial)
https://www.google.com/search?q=pmp+formula+number+of+links
https://www.google.com/search?q=wikipedia+factorial
- The number of links and combinations is exponential: UI cannot display all of them
- To avoid perf bottleneck, devs reduce links, nodes, combinations: They create a
tree - Better solution: Don’t display the links. Use Virtual links from Virtual Matrices
- Bonus: Virtual Matrices simplify UI (PC and console)
- Let N be the number of nodes, L the number of links, C the number of combinations then L = N x (N - 1) / 2 and C = N! (also called Factorial)
Mathemarics
2 options for ARPGs:
- Matrix → Amputated and Ordered → Tree
- Matrix → Compacted → Virtual Matrix
For Matrices:
Let N be the number of Nodes
Let L be the number of Links L
Let C be the number of Combinations
L = N x (N - 1) / 2
C = N! (also called Factorial)
// Factorial
const f = (n) => {
if (n < 0) { return undefined; }
let c = n || 1;
for (i = 1; i < n; ++i) { c *= i; }
return c;
}
console.log(f(-1)); // undefined
console.log(f(0)); // 1
console.log(f(1)); // 1
console.log(f(2)); // 2
console.log(f(3)); // 6
console.log(f(4)); // 24
console.log(f(5)); // 120
console.log(f(6)); // 720
Bonus - Accelerate
Spell « Accelerate » in Dungeon Keeper
https://dungeonkeeper.fandom.com/wiki/Speed_Monster
- Increase all speeds:
- attack speed
- movement speed
- Could be a curse for minions (10s)
- Base effect would accelerate minions
- A rune would also accelerate enemies (for Thorns)
Bonus - Runes as Gems
Crazy idea:
Runes are collectibles gems.
Every game is different (runes will drop in a random order).
All skills stay accessible at level 1.