pfrpg_tables 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. checksums.yaml +7 -0
  2. data/lib/pfrpg_tables/tables/attribute_modifier.rb +5 -0
  3. data/lib/pfrpg_tables/tables/attributes.rb +13 -0
  4. data/lib/pfrpg_tables/tables/bonus.rb +17 -0
  5. data/lib/pfrpg_tables/tables/equipment_totaler.rb +14 -0
  6. data/lib/pfrpg_tables/tables/feat_options.rb +28 -0
  7. data/lib/pfrpg_tables/tables/feat_totaler.rb +61 -0
  8. data/lib/pfrpg_tables/tables/feature_totaler.rb +86 -0
  9. data/lib/pfrpg_tables/tables/heroclasses/alchemist.rb +189 -0
  10. data/lib/pfrpg_tables/tables/heroclasses/arcane_archer.rb +98 -0
  11. data/lib/pfrpg_tables/tables/heroclasses/arcane_trickster.rb +89 -0
  12. data/lib/pfrpg_tables/tables/heroclasses/assassin.rb +79 -0
  13. data/lib/pfrpg_tables/tables/heroclasses/barbarian.rb +171 -0
  14. data/lib/pfrpg_tables/tables/heroclasses/bard.rb +190 -0
  15. data/lib/pfrpg_tables/tables/heroclasses/cavalier.rb +189 -0
  16. data/lib/pfrpg_tables/tables/heroclasses/cleric.rb +186 -0
  17. data/lib/pfrpg_tables/tables/heroclasses/dragon_disciple.rb +92 -0
  18. data/lib/pfrpg_tables/tables/heroclasses/druid.rb +190 -0
  19. data/lib/pfrpg_tables/tables/heroclasses/duelist.rb +79 -0
  20. data/lib/pfrpg_tables/tables/heroclasses/eldritch_knight.rb +86 -0
  21. data/lib/pfrpg_tables/tables/heroclasses/fighter.rb +170 -0
  22. data/lib/pfrpg_tables/tables/heroclasses/gunslinger.rb +189 -0
  23. data/lib/pfrpg_tables/tables/heroclasses/inquisitor.rb +189 -0
  24. data/lib/pfrpg_tables/tables/heroclasses/loremaster.rb +112 -0
  25. data/lib/pfrpg_tables/tables/heroclasses/magus.rb +189 -0
  26. data/lib/pfrpg_tables/tables/heroclasses/monk.rb +202 -0
  27. data/lib/pfrpg_tables/tables/heroclasses/mystic_theurge.rb +89 -0
  28. data/lib/pfrpg_tables/tables/heroclasses/oracle.rb +189 -0
  29. data/lib/pfrpg_tables/tables/heroclasses/paladin.rb +188 -0
  30. data/lib/pfrpg_tables/tables/heroclasses/pathfinder_chronicler.rb +79 -0
  31. data/lib/pfrpg_tables/tables/heroclasses/ranger.rb +313 -0
  32. data/lib/pfrpg_tables/tables/heroclasses/rogue.rb +168 -0
  33. data/lib/pfrpg_tables/tables/heroclasses/shadowdancer.rb +82 -0
  34. data/lib/pfrpg_tables/tables/heroclasses/sorcerer.rb +169 -0
  35. data/lib/pfrpg_tables/tables/heroclasses/summoner.rb +189 -0
  36. data/lib/pfrpg_tables/tables/heroclasses/witch.rb +189 -0
  37. data/lib/pfrpg_tables/tables/heroclasses/wizard.rb +189 -0
  38. data/lib/pfrpg_tables/tables/heroclasses.rb +4 -0
  39. data/lib/pfrpg_tables/tables/languages.rb +53 -0
  40. data/lib/pfrpg_tables/tables/level_table.rb +195 -0
  41. data/lib/pfrpg_tables/tables/size.rb +25 -0
  42. data/lib/pfrpg_tables/tables/spells/spells_per_day.rb +239 -0
  43. data/lib/pfrpg_tables/tables/spells.rb +28 -0
  44. data/lib/pfrpg_tables/tables/weapons.rb +57 -0
  45. data/lib/pfrpg_tables/tables.rb +10 -0
  46. data/lib/pfrpg_tables/version.rb +3 -0
  47. data/lib/pfrpg_tables.rb +8 -0
  48. metadata +117 -0
@@ -0,0 +1,189 @@
1
+ class PfrpgTables::Tables::Heroclasses::Wizard
2
+ def self.level_bonus(level)
3
+ bonus = nil
4
+ case level
5
+ when 1
6
+ bonus = { :base_attack_bonus => [0],
7
+ :fort_save => 0,
8
+ :ref_save => 0,
9
+ :will_save => 2,
10
+ :choices => [ ChooseArcaneBond.new, ChooseArcaneSchool.new ],
11
+ :granted_features => ["cantrips", "scribe_spell"]
12
+ }
13
+ when 2
14
+ bonus = { :base_attack_bonus => [1],
15
+ :fort_save => 0,
16
+ :ref_save => 0,
17
+ :will_save => 3,
18
+ :choices => [],
19
+ :granted_features => []
20
+ }
21
+ when 3
22
+ bonus = { :base_attack_bonus => [1],
23
+ :fort_save => 1,
24
+ :ref_save => 1,
25
+ :will_save => 3,
26
+ :choices => [],
27
+ :granted_features => []
28
+ }
29
+ when 4
30
+ bonus = { :base_attack_bonus => [2],
31
+ :fort_save => 1,
32
+ :ref_save => 1,
33
+ :will_save => 4,
34
+ :choices => [],
35
+ :granted_features => []
36
+ }
37
+ when 5
38
+ bonus = { :base_attack_bonus => [2],
39
+ :fort_save => 1,
40
+ :ref_save => 1,
41
+ :will_save => 4,
42
+ :choices => [ ChooseWizardBonusFeat.new],
43
+ :granted_features => []
44
+ }
45
+ when 6
46
+ bonus = { :base_attack_bonus => [3],
47
+ :fort_save => 2,
48
+ :ref_save => 2,
49
+ :will_save => 5,
50
+ :choices => [],
51
+ :granted_features => []
52
+ }
53
+ when 7
54
+ bonus = { :base_attack_bonus => [3],
55
+ :fort_save => 2,
56
+ :ref_save => 2,
57
+ :will_save => 5,
58
+ :granted_features => [],
59
+ :choices => []
60
+ }
61
+ when 8
62
+ bonus = { :base_attack_bonus => [4],
63
+ :fort_save => 2,
64
+ :ref_save => 2,
65
+ :will_save => 6,
66
+ :granted_features => [],
67
+ :choices => []
68
+ }
69
+ when 9
70
+ bonus = { :base_attack_bonus => [4],
71
+ :fort_save => 3,
72
+ :ref_save => 3,
73
+ :will_save => 6,
74
+ :granted_features => [],
75
+ :choices => []
76
+ }
77
+ when 10
78
+ bonus = { :base_attack_bonus => [5],
79
+ :fort_save => 3,
80
+ :ref_save => 3,
81
+ :will_save => 7,
82
+ :choices => [ ChooseWizardBonusFeat.new],
83
+ :granted_features => [],
84
+ }
85
+ when 11
86
+ bonus = { :base_attack_bonus => [5],
87
+ :fort_save => 3,
88
+ :ref_save => 3,
89
+ :will_save => 7,
90
+ :granted_features => [],
91
+ :choices => []
92
+ }
93
+ when 12
94
+ bonus = { :base_attack_bonus => [6,1],
95
+ :fort_save => 4,
96
+ :ref_save => 4,
97
+ :will_save => 8,
98
+ :granted_features => [],
99
+ :choices => []
100
+ }
101
+ when 13
102
+ bonus = { :base_attack_bonus => [6,1],
103
+ :fort_save => 4,
104
+ :ref_save => 4,
105
+ :will_save => 8,
106
+ :granted_features => [],
107
+ :choices => []
108
+ }
109
+ when 14
110
+ bonus = { :base_attack_bonus => [7,2],
111
+ :fort_save => 4,
112
+ :ref_save => 4,
113
+ :will_save => 9,
114
+ :choices => [],
115
+ :granted_features => []
116
+ }
117
+ when 15
118
+ bonus = { :base_attack_bonus => [7,2],
119
+ :fort_save => 5,
120
+ :ref_save => 5,
121
+ :will_save => 9,
122
+ :choices => [ ChooseWizardBonusFeat.new],
123
+ :granted_features => [],
124
+ }
125
+ when 16
126
+ bonus = { :base_attack_bonus => [8,3],
127
+ :fort_save => 5,
128
+ :ref_save => 5,
129
+ :will_save => 10,
130
+ :choices => [],
131
+ :granted_features => []
132
+ }
133
+ when 17
134
+ bonus = { :base_attack_bonus => [8,3],
135
+ :fort_save => 5,
136
+ :ref_save => 5,
137
+ :will_save => 10,
138
+ :granted_features => [],
139
+ :choices => []
140
+ }
141
+ when 18
142
+ bonus = { :base_attack_bonus => [9,4],
143
+ :fort_save => 6,
144
+ :ref_save => 6,
145
+ :will_save => 11,
146
+ :granted_features => [],
147
+ :choices => []
148
+ }
149
+ when 19
150
+ bonus = { :base_attack_bonus => [9,4],
151
+ :fort_save => 6,
152
+ :ref_save => 6,
153
+ :will_save => 11,
154
+ :granted_features => [],
155
+ :choices => []
156
+ }
157
+ when 20
158
+ bonus = { :base_attack_bonus => [10,5],
159
+ :fort_save => 6,
160
+ :ref_save => 6,
161
+ :will_save => 12,
162
+ :granted_features => [],
163
+ :choices => [ ChooseWizardBonusFeat.new]
164
+ }
165
+ end
166
+ bonus
167
+ end
168
+
169
+ def self.familiars
170
+ {
171
+ "Bat" => "Master gains a +3 bonus on Fly checks",
172
+ "Cat" => "Master gains a +3 bonus on Stealth checks",
173
+ "Hawk" => "Master gains a +3 bonus on sight-based and opposed Perception checks in bright light",
174
+ "Lizard" => "Master gains a +3 bonus on Climb checks",
175
+ "Monkey" => "Master gains a +3 bonus on Acrobatics checks",
176
+ "Owl" => "Master gains a +3 bonus on sight-based and opposed Perception checks in shadows or darkness",
177
+ "Rat" => "Master gains a +2 bonus on Fortitude saves",
178
+ "Raven" => "Master gains a +3 bonus on Appraise checks, Speaks one language of its Master",
179
+ "Toad" => "Master gains +3 hit points",
180
+ "Viper" => "Master gains a +3 bonus on Bluff checks",
181
+ "Weasel" => "Master gains a +2 bonus on Reflex saves"
182
+ }
183
+ end
184
+
185
+ def self.bond_objects
186
+ ["amulet", "ring", "staff", "wand","weapon"]
187
+ end
188
+ end
189
+
@@ -0,0 +1,188 @@
1
+ class PfrpgTables::Tables::Heroclasses::Paladin
2
+
3
+ def self.level_bonus(level)
4
+ bonus = nil
5
+ case level
6
+ when 1
7
+ bonus = { :base_attack_bonus => [1],
8
+ :fort_save => 2,
9
+ :ref_save => 0,
10
+ :will_save => 2,
11
+ :granted_features => ["aura_of_good", "detect_evil", "smite_evil"],
12
+ :choices => [],
13
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
14
+ }
15
+ when 2
16
+ bonus = { :base_attack_bonus => [2],
17
+ :fort_save => 3,
18
+ :ref_save => 0,
19
+ :will_save => 3,
20
+ :granted_features => ["divine_grace", "lay_on_hands"],
21
+ :choices => [],
22
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
23
+ }
24
+ when 3
25
+ bonus = { :base_attack_bonus => [3],
26
+ :fort_save => 3,
27
+ :ref_save => 1,
28
+ :will_save => 3,
29
+ :granted_features => ["aura_of_courage", "divine_health"],
30
+ :choices => [ ChooseMercy.new ],
31
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
32
+ }
33
+ when 4
34
+ bonus = { :base_attack_bonus => [4],
35
+ :fort_save => 4,
36
+ :ref_save => 1,
37
+ :will_save => 4,
38
+ :granted_features => ["channel_positive_energy"],
39
+ :choices => [],
40
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
41
+ }
42
+ when 5
43
+ bonus = { :base_attack_bonus => [5],
44
+ :fort_save => 4,
45
+ :ref_save => 1,
46
+ :will_save => 4,
47
+ :granted_features => [],
48
+ :choices => [ ChooseDivineBond.new ],
49
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
50
+ }
51
+ when 6
52
+ bonus = { :base_attack_bonus => [6,1],
53
+ :fort_save => 5,
54
+ :ref_save => 2,
55
+ :will_save => 5,
56
+ :choices => [ ChooseMercy.new ],
57
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
58
+ }
59
+ when 7
60
+ bonus = { :base_attack_bonus => [7,2],
61
+ :fort_save => 5,
62
+ :ref_save => 2,
63
+ :will_save => 5,
64
+ :granted_features => [],
65
+ :choices => [],
66
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
67
+ }
68
+ when 8
69
+ bonus = { :base_attack_bonus => [8,3],
70
+ :fort_save => 6,
71
+ :ref_save => 2,
72
+ :will_save => 6,
73
+ :choices => [],
74
+ :granted_features => ["aura_of_resolve"],
75
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
76
+ }
77
+ when 9
78
+ bonus = { :base_attack_bonus => [9,4],
79
+ :fort_save => 6,
80
+ :ref_save => 3,
81
+ :will_save => 6,
82
+ :choices => [ ChooseMercy.new ],
83
+ :granted_features => [],
84
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
85
+ }
86
+ when 10
87
+ bonus = { :base_attack_bonus => [10,5],
88
+ :fort_save => 7,
89
+ :ref_save => 3,
90
+ :will_save => 7,
91
+ :choices => [],
92
+ :granted_features => [],
93
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
94
+ }
95
+ when 11
96
+ bonus = { :base_attack_bonus => [11,6,1],
97
+ :fort_save => 7,
98
+ :ref_save => 3,
99
+ :will_save => 7,
100
+ :choices => [],
101
+ :granted_features => ["aura_of_justice"],
102
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
103
+ }
104
+ when 12
105
+ bonus = { :base_attack_bonus => [12,7,2],
106
+ :fort_save => 8,
107
+ :ref_save => 4,
108
+ :will_save => 8,
109
+ :choices => [ ChooseMercy.new ],
110
+ :granted_features => [],
111
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
112
+ }
113
+ when 13
114
+ bonus = { :base_attack_bonus => [13,8,3],
115
+ :fort_save => 8,
116
+ :ref_save => 4,
117
+ :will_save => 8,
118
+ :granted_features => [],
119
+ :choices => [],
120
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
121
+ }
122
+ when 14
123
+ bonus = { :base_attack_bonus => [14,9,4],
124
+ :fort_save => 9,
125
+ :ref_save => 4,
126
+ :will_save => 9,
127
+ :choices => [],
128
+ :granted_features => ["aura_of_faith"],
129
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
130
+ }
131
+ when 15
132
+ bonus = { :base_attack_bonus => [15,10,5],
133
+ :fort_save => 9,
134
+ :ref_save => 5,
135
+ :will_save => 9,
136
+ :choices => [ ChooseMercy.new ],
137
+ :granted_features => [],
138
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
139
+ }
140
+ when 16
141
+ bonus = { :base_attack_bonus => [16,11,6,1],
142
+ :fort_save => 10,
143
+ :ref_save => 5,
144
+ :will_save => 10,
145
+ :choices => [],
146
+ :granted_features => [],
147
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
148
+ }
149
+ when 17
150
+ bonus = { :base_attack_bonus => [17,12,7,2],
151
+ :fort_save => 10,
152
+ :ref_save => 5,
153
+ :will_save => 10,
154
+ :choices => [],
155
+ :granted_features => ["aura_of_righteousness"],
156
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
157
+ }
158
+ when 18
159
+ bonus = { :base_attack_bonus => [18,13,8,3],
160
+ :fort_save => 11,
161
+ :ref_save => 6,
162
+ :will_save => 11,
163
+ :choices => [ ChooseMercy.new ],
164
+ :granted_features => [],
165
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
166
+ }
167
+ when 19
168
+ bonus = { :base_attack_bonus => [19,14,9,4],
169
+ :fort_save => 11,
170
+ :ref_save => 6,
171
+ :will_save => 11,
172
+ :choices => [],
173
+ :granted_features => [],
174
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
175
+ }
176
+ when 20
177
+ bonus = { :base_attack_bonus => [20,15,10,5],
178
+ :fort_save => 12,
179
+ :ref_save => 6,
180
+ :will_save => 12,
181
+ :choices => [],
182
+ :granted_features => ["holy_champion"],
183
+ :spells_per_day => Tables::Spells::SpellsPerDay.Paladin(level)
184
+ }
185
+ end
186
+ bonus
187
+ end
188
+ end
@@ -0,0 +1,79 @@
1
+ class PfrpgTables::Tables::Heroclasses::PathfinderChronicler
2
+
3
+ def self.level_bonus(level)
4
+ bonus = nil
5
+ case level
6
+ when 1
7
+ bonus = { :base_attack_bonus => [0],
8
+ :fort_save => 0,
9
+ :ref_save => 1,
10
+ :will_save => 1,
11
+ :granted_features => ["bardicknowledge", "deeppockets", "masterscribe"]
12
+ }
13
+ when 2
14
+ bonus = { :base_attack_bonus => [1],
15
+ :fort_save => 1,
16
+ :ref_save => 1,
17
+ :will_save => 1,
18
+ :granted_features => ["livetotellthetale", "pathfinding"]
19
+ }
20
+ when 3
21
+ bonus = { :base_attack_bonus => [2],
22
+ :fort_save => 1,
23
+ :ref_save => 2,
24
+ :will_save => 2,
25
+ :granted_features => ["bardicperformance", "improvedaid"]
26
+ }
27
+ when 4
28
+ bonus = { :base_attack_bonus => [3],
29
+ :fort_save => 1,
30
+ :ref_save => 2,
31
+ :will_save => 2,
32
+ :granted_features => ["epictales"]
33
+ }
34
+ when 5
35
+ bonus = { :base_attack_bonus => [3],
36
+ :fort_save => 2,
37
+ :ref_save => 3,
38
+ :will_save => 3,
39
+ :granted_features => ["whisperingcampaign"]
40
+ }
41
+ when 6
42
+ bonus = { :base_attack_bonus => [4],
43
+ :fort_save => 2,
44
+ :ref_save => 3,
45
+ :will_save => 3,
46
+ :granted_features => ["inspireaction"]
47
+ }
48
+ when 7
49
+ bonus = { :base_attack_bonus => [5],
50
+ :fort_save => 2,
51
+ :ref_save => 4,
52
+ :will_save => 4,
53
+ :granted_features => ["calldownthelegends"]
54
+ }
55
+ when 8
56
+ bonus = { :base_attack_bonus => [6],
57
+ :fort_save => 3,
58
+ :ref_save => 4,
59
+ :will_save => 4,
60
+ :granted_features => ["greaterepictales"]
61
+ }
62
+ when 9
63
+ bonus = { :base_attack_bonus => [6],
64
+ :fort_save => 3,
65
+ :ref_save => 5,
66
+ :will_save => 5,
67
+ :granted_features => ["inspireaction"]
68
+ }
69
+ when 10
70
+ bonus = { :base_attack_bonus => [7],
71
+ :fort_save => 3,
72
+ :ref_save => 5,
73
+ :will_save => 5,
74
+ :granted_features => ["layoftheexalteddead"]
75
+ }
76
+ end
77
+ bonus
78
+ end
79
+ end