traveller_rpg 0.0.0.4 → 0.0.1.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.
- checksums.yaml +4 -4
- data/README.md +236 -0
- data/Rakefile +26 -0
- data/VERSION +1 -1
- data/bin/chargen +2 -42
- data/lib/traveller_rpg/career.rb +254 -129
- data/lib/traveller_rpg/career_path.rb +102 -54
- data/lib/traveller_rpg/careers.rb +499 -91
- data/lib/traveller_rpg/character.rb +115 -8
- data/lib/traveller_rpg/homeworld.rb +10 -10
- data/lib/traveller_rpg.rb +8 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 53aa32f92667ab01dc7a56f4c15337e36fb24309a28d50fff721f3102ae959b1
|
4
|
+
data.tar.gz: e2b461962bec2520091dac364de9eb11d95237fb1fc534672d24ca45d3310f96
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e0a9673504c265c07ec618550865efbb2a41310495a8a046e4a68dea645fd48df4a60959deb748eb1a696ef46aa267a98348ba6946289bf6ca12f3ab90c87bb
|
7
|
+
data.tar.gz: 8a21d7ef55edfb06544dc5aa3ddd4136abf86bc29ff7e3cf3e77b6447f3a052fcb38ec406e680783aed45828e08b091c9fc575877c33bb91b2f5fae4030d08e2
|
data/README.md
CHANGED
@@ -4,3 +4,239 @@ This work was inspired by
|
|
4
4
|
https://github.com/LeamHall/CT_Character_Generator which is also the origin
|
5
5
|
for some of the `data/*.txt` files. Most of the behavior is based on
|
6
6
|
information available from http://www.traveller-srd.com/core-rules
|
7
|
+
|
8
|
+
# Usage
|
9
|
+
|
10
|
+
```
|
11
|
+
git clone https://github.com/rickhull/traveller_rpg.git
|
12
|
+
|
13
|
+
cd traveller_rpg
|
14
|
+
|
15
|
+
HUMAN=1 rake chargen
|
16
|
+
```
|
17
|
+
|
18
|
+
## Sample output
|
19
|
+
|
20
|
+
```
|
21
|
+
Mowgli was born on Jupiter (asteroid high_population water_world fluid_oceans ice_capped)
|
22
|
+
Education 2 qualifies for 1 skills
|
23
|
+
Choose a skill: (zero_g streetwise seafarer_group vacc_suit)
|
24
|
+
> seafarer_group
|
25
|
+
Acquired background skill: seafarer_group 0
|
26
|
+
|
27
|
+
Description
|
28
|
+
===
|
29
|
+
Name: Mowgli
|
30
|
+
Gender: M
|
31
|
+
Age: 18
|
32
|
+
|
33
|
+
Characteristics
|
34
|
+
===
|
35
|
+
Strength: 10
|
36
|
+
Dexterity: 5
|
37
|
+
Endurance: 6
|
38
|
+
Intelligence: 8
|
39
|
+
Education: 2
|
40
|
+
Social Status: 3
|
41
|
+
|
42
|
+
Skills
|
43
|
+
===
|
44
|
+
seafarer_group: 0
|
45
|
+
|
46
|
+
|
47
|
+
Initiated new career path
|
48
|
+
Choose a career (Scout Agent)
|
49
|
+
> Agent
|
50
|
+
Agent qualification: intelligence 6+
|
51
|
+
Qualify check: rolled 9 (DM 0) against 6
|
52
|
+
Qualified for Agent
|
53
|
+
Entering new career: Agent
|
54
|
+
Choose a specialty: (law_enforcement intelligence corporate)
|
55
|
+
> intelligence
|
56
|
+
Acquired basic training skill: streetwise 0
|
57
|
+
Acquired basic training skill: drive_group 0
|
58
|
+
Acquired basic training skill: investigate 0
|
59
|
+
Acquired basic training skill: flyer_group 0
|
60
|
+
Acquired basic training skill: recon 0
|
61
|
+
Acquired basic training skill: gun_combat_group 0
|
62
|
+
Agent term 1 started, age 18
|
63
|
+
Choose skills regimen: (personal service specialist)
|
64
|
+
> service
|
65
|
+
Training roll: 5
|
66
|
+
Trained recon to 1
|
67
|
+
Agent intelligence survival: intelligence 7+
|
68
|
+
Survival check: rolled 12 (DM 0) against 7
|
69
|
+
Agent term 1 completed successfully.
|
70
|
+
Agent intelligence advancement: intelligence 5+
|
71
|
+
Advancement check: rolled 7 (DM 0) against 5
|
72
|
+
Advanced career to rank 1
|
73
|
+
Awarded rank title: Corporal
|
74
|
+
Achieved rank skill: streetwise 1
|
75
|
+
Choose skills regimen: (personal service specialist)
|
76
|
+
> personal
|
77
|
+
Training roll: 3
|
78
|
+
Trained endurance to 7
|
79
|
+
Event roll: 8 (DM 0) = 8
|
80
|
+
Undercover
|
81
|
+
Muster out? (yes no)
|
82
|
+
> no
|
83
|
+
Agent term 2 started, age 22
|
84
|
+
Choose skills regimen: (personal service specialist)
|
85
|
+
> specialist
|
86
|
+
Training roll: 1
|
87
|
+
Trained investigate to 1
|
88
|
+
Agent intelligence survival: intelligence 7+
|
89
|
+
Survival check: rolled 5 (DM 0) against 7
|
90
|
+
Agent career ended with a mishap after 4 years.
|
91
|
+
Mishap roll: 1
|
92
|
+
Severely injured in action. Roll twice on the Injury table or take a level 2 Injury.
|
93
|
+
Muster out: Agent
|
94
|
+
Left career early -- lose benefit for last term
|
95
|
+
Cash roll: 5 (DM 0) = 5
|
96
|
+
Acquired 10000 credits from cash roll #1
|
97
|
+
Cash roll: 2 (DM 0) = 2
|
98
|
+
Acquired 2000 credits from cash roll #2
|
99
|
+
Benefits roll: 3 (DM 0) = 3
|
100
|
+
Acquired Ship Share as a career benefit
|
101
|
+
Retirement bonus: 0
|
102
|
+
|
103
|
+
|
104
|
+
Career: Agent
|
105
|
+
===
|
106
|
+
Term: 2
|
107
|
+
Active: false
|
108
|
+
Rank: 1
|
109
|
+
Title: Corporal
|
110
|
+
|
111
|
+
|
112
|
+
Description
|
113
|
+
===
|
114
|
+
Name: Mowgli
|
115
|
+
Gender: M
|
116
|
+
Age: 26
|
117
|
+
|
118
|
+
Characteristics
|
119
|
+
===
|
120
|
+
Strength: 10
|
121
|
+
Dexterity: 5
|
122
|
+
Endurance: 7
|
123
|
+
Intelligence: 8
|
124
|
+
Education: 2
|
125
|
+
Social Status: 3
|
126
|
+
|
127
|
+
Skills
|
128
|
+
===
|
129
|
+
seafarer_group: 0
|
130
|
+
streetwise: 1
|
131
|
+
drive_group: 0
|
132
|
+
investigate: 1
|
133
|
+
flyer_group: 0
|
134
|
+
recon: 1
|
135
|
+
gun_combat_group: 0
|
136
|
+
|
137
|
+
Stuff
|
138
|
+
===
|
139
|
+
Ship Share: 1
|
140
|
+
|
141
|
+
Credits
|
142
|
+
===
|
143
|
+
Total: 12000
|
144
|
+
Cash Rolls: 2
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
Exit career mode? (yes no)
|
149
|
+
> no
|
150
|
+
Choose a career (Scout)
|
151
|
+
> Scout
|
152
|
+
Scout qualification: intelligence 5+
|
153
|
+
Qualify check: rolled 9 (DM -1) against 5
|
154
|
+
Qualified for Scout
|
155
|
+
Entering new career: Scout
|
156
|
+
Choose a specialty: (courier surveyor explorer)
|
157
|
+
> surveyor
|
158
|
+
Service skill (pilot_small_craft survival mechanic astrogation comms)
|
159
|
+
> survival
|
160
|
+
Acquired basic training skill: survival 0
|
161
|
+
Scout term 1 started, age 26
|
162
|
+
Choose skills regimen: (personal service specialist)
|
163
|
+
> specialist
|
164
|
+
Training roll: 4
|
165
|
+
Trained navigation to 1
|
166
|
+
Scout surveyor survival: endurance 6+
|
167
|
+
Survival check: rolled 10 (DM 0) against 6
|
168
|
+
Scout term 1 completed successfully.
|
169
|
+
Scout surveyor advancement: intelligence 8+
|
170
|
+
Advancement check: rolled 4 (DM 0) against 8
|
171
|
+
Event roll: 12 (DM 0) = 12
|
172
|
+
You make an important discovery for the Imperium. Gain a career rank.
|
173
|
+
Muster out? (yes no)
|
174
|
+
> no
|
175
|
+
Scout term 2 started, age 30
|
176
|
+
Choose skills regimen: (personal service specialist)
|
177
|
+
> specialist
|
178
|
+
Training roll: 5
|
179
|
+
Trained diplomat to 1
|
180
|
+
Scout surveyor survival: endurance 6+
|
181
|
+
Survival check: rolled 4 (DM 0) against 6
|
182
|
+
Scout career ended with a mishap after 3 years.
|
183
|
+
Mishap roll: 1
|
184
|
+
Severely injured in action. Roll twice on the Injury table or take a level 2 Injury.
|
185
|
+
Muster out: Scout
|
186
|
+
Left career early -- lose benefit for last term
|
187
|
+
Benefits roll: 5 (DM 0) = 5
|
188
|
+
Acquired Weapon as a career benefit
|
189
|
+
Retirement bonus: 0
|
190
|
+
|
191
|
+
|
192
|
+
Career: Scout
|
193
|
+
===
|
194
|
+
Term: 2
|
195
|
+
Active: false
|
196
|
+
Rank: 0
|
197
|
+
|
198
|
+
|
199
|
+
Description
|
200
|
+
===
|
201
|
+
Name: Mowgli
|
202
|
+
Gender: M
|
203
|
+
Age: 33
|
204
|
+
|
205
|
+
Characteristics
|
206
|
+
===
|
207
|
+
Strength: 10
|
208
|
+
Dexterity: 5
|
209
|
+
Endurance: 7
|
210
|
+
Intelligence: 8
|
211
|
+
Education: 2
|
212
|
+
Social Status: 3
|
213
|
+
|
214
|
+
Skills
|
215
|
+
===
|
216
|
+
seafarer_group: 0
|
217
|
+
streetwise: 1
|
218
|
+
drive_group: 0
|
219
|
+
investigate: 1
|
220
|
+
flyer_group: 0
|
221
|
+
recon: 1
|
222
|
+
gun_combat_group: 0
|
223
|
+
survival: 0
|
224
|
+
navigation: 1
|
225
|
+
diplomat: 1
|
226
|
+
|
227
|
+
Stuff
|
228
|
+
===
|
229
|
+
Ship Share: 1
|
230
|
+
Weapon: 1
|
231
|
+
|
232
|
+
Credits
|
233
|
+
===
|
234
|
+
Total: 12000
|
235
|
+
Cash Rolls: 2
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
Exit career mode? (yes no)
|
240
|
+
> yes
|
241
|
+
DONE
|
242
|
+
```
|
data/Rakefile
CHANGED
@@ -16,3 +16,29 @@ begin
|
|
16
16
|
rescue LoadError
|
17
17
|
warn "buildar tasks unavailable"
|
18
18
|
end
|
19
|
+
|
20
|
+
def chargen *args
|
21
|
+
ruby '-Ilib', 'bin/chargen', *args
|
22
|
+
end
|
23
|
+
|
24
|
+
desc "Run chargen"
|
25
|
+
task :chargen do
|
26
|
+
# consume ARGV
|
27
|
+
args = []
|
28
|
+
found = false
|
29
|
+
while !ARGV.empty?
|
30
|
+
arg = ARGV.shift
|
31
|
+
# skip all args until we reach 'mrbt'
|
32
|
+
if found
|
33
|
+
args << arg unless arg == '--'
|
34
|
+
elsif arg == 'chargen'
|
35
|
+
found = true
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
begin
|
40
|
+
chargen *args
|
41
|
+
rescue RuntimeError
|
42
|
+
exit 1
|
43
|
+
end
|
44
|
+
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.1.1
|
data/bin/chargen
CHANGED
@@ -1,47 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
require 'pry'
|
4
|
-
require 'traveller_rpg'
|
5
|
-
require 'traveller_rpg/careers'
|
6
|
-
require 'traveller_rpg/generator'
|
7
3
|
require 'traveller_rpg/career_path'
|
8
4
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
careers = %w{Scout}
|
13
|
-
|
14
|
-
loop {
|
15
|
-
careers = careers.select { |c| path.eligible? c }
|
16
|
-
if careers.empty?
|
17
|
-
puts "No eligible careers available!"
|
18
|
-
break
|
19
|
-
end
|
20
|
-
career = TravellerRPG.choose("Choose a career", *careers)
|
21
|
-
career = TravellerRPG.career_class(career).new(char)
|
22
|
-
|
23
|
-
# skip draft / drifter for now
|
24
|
-
accepted = false
|
25
|
-
accepted = path.apply(career) while !accepted
|
26
|
-
|
27
|
-
#
|
28
|
-
loop {
|
29
|
-
path.run_term
|
30
|
-
break unless path.active_career
|
31
|
-
break if career.must_exit?
|
32
|
-
next if career.must_remain?
|
33
|
-
break if TravellerRPG.choose("Muster out?", :yes, :no) == :yes
|
34
|
-
}
|
35
|
-
path.muster_out if path.active_career
|
36
|
-
|
37
|
-
puts char.desc.pretty_inspect
|
38
|
-
puts char.stats.pretty_inspect
|
39
|
-
puts char.skills.pretty_inspect
|
40
|
-
puts char.stuff.pretty_inspect
|
41
|
-
|
42
|
-
break if TravellerRPG.choose("Exit career mode?", :yes, :no) == :yes
|
43
|
-
}
|
44
|
-
|
45
|
-
binding.pry if ENV['PRY']
|
46
|
-
|
5
|
+
careers = %w{Agent Army Marines Navy Scout}
|
6
|
+
TravellerRPG::CareerPath.run(careers)
|
47
7
|
puts "DONE"
|