-
Notifications
You must be signed in to change notification settings - Fork 0
/
RoleplayClassFocusBuffSkills.txt
91 lines (66 loc) · 3.44 KB
/
RoleplayClassFocusBuffSkills.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Roleplay Class Focused Skills:
# An adaptative/dynamic bonus system to let the player roleplay focusing on a single class (but still balanced with multiclass) skills development.
# Example for 3 classes: Mage Warrior Thief
TotalClasses=3
fNormalizer=(TotalClasses-1)=2.0f #total least the one being calculated as it is not part of the differences sum below
# TotalSkillPointsUsedPerClass M W T;
# buff applied BM BW BT;
# final value FM FW FT used to apply effects, damage etc.
______________
__ Example: __
# this is the total sum of skill points used in each class' skills ex.: W skills Wa4+Wb15+Wc1=W20
M=10 W=20 T=5
# the bonus happens if another class has less sum of total skill points spent
# if subtraction is < 0 it becomes 0
BM = (M-W=0) +(M-T=5) = 5
BW = (W-M=10)+(W-T=15) = 25
BT = (T-M=0) +(T-W=0) = 0 #would be negative so becomes 0
# the bonuses need to be normalized Bonus/=fNormalizer to be able to control better the final bonus
BM/=2.0 = 2.5
BW/=2.0 = 12.5
BT/=2.0 = 0.0
# Apply difficulty to the bonus: Bonus*=fDifficulty
# fDifficulty=1.0 (normal +100% bonus)
FM = M+BM=10+ 2.5 = 12.5
FW = W+BW=20+12.5 = 32.5
FT = T+BT=5 + 0.0 = 5.0
# fDifficulty=2.0 (easier +200% bonus)
FM = M+BM=10+ 5 = 15
FW = W+BW=20+25 = 45
FT = T+BT=5 + 0 = 5
___
# Spreading total class bonus per Warrior skill ex.:
# (the float truncs to integer to fit skills based on integer values but could round nearest or ceiling on other systems)
# User option: fDifficulty from 0.00 to 1.00
# 0.00 means vanilla, no bonus, no class focus roleplay.
# 0.50 means hard, +50% bonus.
# 1.00 means normal, +100% bonus.
# >1.00 means easy, more than 100% bonus on the focused classes.
# Following the example values and calculating for Warrior class:
# (remember that BW is normalized)
Wa=4 Wb=15 Wc=1 #Warrior skills a b c, used a total of 20 points (W=20 look on the top)
# skills final values: Waf Wbf Wcf = spent skill points + bonus per spent skill points
# Obs.: there could have also a easifier setting allowing to round ceiling always making that little bit improvement be rewarded imediately
# ex.: fDifficulty 1.0
PW = BW*fDifficulty/W = 12.5*1.0/20 = 0.625; #PW means bonus Per Warrior skill point.
Waf = Wa+Wa*PW = 4 + 4*0.625 = 6.5 #6
Wbf = Wb+Wb*PW = 15+15*0.625 = 24.375 #24
Wcf = Wc+Wc*PW = 1 + 1*0.625 = 1.625 #1 (no bonus)
# if easy round ceiling would be: Waf=7 Wbf=25 Wcf=2
Validate: 6.5+24.375+1.625=32.5 #32, see FW difficulty 1.0 up there
# ex.: fDifficulty 2.0
PW=BW*fDifficulty/W=1.25; #PW means bonus Per Warrior skill point.
Waf = Wa+Wa*PW = 9
Wbf = Wb+Wb*PW = 33.75 #33
Wcf = Wc+Wc*PW = 2.25 #2
Validate: 9+33.75+2.25 = 45 = FW #45, see FW difficulty 2.0 up there
# implementing:
# Each skill will need a new buff variable to be set every time a new skill point is spent.
# Using each skill must apply the buff to the final result.
# The skill book must show the buff, could hold a key, may be shift to show the buff.
# Could move the mouse over to show some calculations to let the playe understand how it works.
# This system could be used in other games too.
# Obs.: the system automatically gives bonus for focused class development and softens the bonuses when going multiclass.
# PS.: it makes the game easier on the beggining at least (or if focusing a single class til the end), therefore makes it less challenging.
# CHANGES:
# added a normalizer to let the difficulty setting clearly control the final results