-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRPG Generator.html
2271 lines (1907 loc) · 757 KB
/
RPG Generator.html
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<!-- RPG Generator by Alice the Candle AKA Jo Lindsay Walton
Copyright 2020 Jo Lindsay Walton
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
See <https://www.gnu.org/licenses/>. -->
<html>
<head>
<meta charset="utf-8">
<title>Attributes Generator</title>
<style title="Twine CSS">@-webkit-keyframes appear{0%{opacity:0}to{opacity:1}}@keyframes appear{0%{opacity:0}to{opacity:1}}@-webkit-keyframes fade-in-out{0%,to{opacity:0}50%{opacity:1}}@keyframes fade-in-out{0%,to{opacity:0}50%{opacity:1}}@-webkit-keyframes rumble{50%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}}@keyframes rumble{50%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}}@-webkit-keyframes shudder{50%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@keyframes shudder{50%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@-webkit-keyframes box-flash{0%{background-color:white;color:white}}@keyframes box-flash{0%{background-color:white;color:white}}@-webkit-keyframes pulse{0%{-webkit-transform:scale(0, 0);transform:scale(0, 0)}20%{-webkit-transform:scale(1.2, 1.2);transform:scale(1.2, 1.2)}40%{-webkit-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}60%{-webkit-transform:scale(1.05, 1.05);transform:scale(1.05, 1.05)}80%{-webkit-transform:scale(0.925, 0.925);transform:scale(0.925, 0.925)}to{-webkit-transform:scale(1, 1);transform:scale(1, 1)}}@keyframes pulse{0%{-webkit-transform:scale(0, 0);transform:scale(0, 0)}20%{-webkit-transform:scale(1.2, 1.2);transform:scale(1.2, 1.2)}40%{-webkit-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}60%{-webkit-transform:scale(1.05, 1.05);transform:scale(1.05, 1.05)}80%{-webkit-transform:scale(0.925, 0.925);transform:scale(0.925, 0.925)}to{-webkit-transform:scale(1, 1);transform:scale(1, 1)}}@-webkit-keyframes shudder-in{0%, to{-webkit-transform:translateX(0em);transform:translateX(0em)}5%, 25%, 45%{-webkit-transform:translateX(-1em);transform:translateX(-1em)}15%, 35%, 55%{-webkit-transform:translateX(1em);transform:translateX(1em)}65%{-webkit-transform:translateX(-0.6em);transform:translateX(-0.6em)}75%{-webkit-transform:translateX(0.6em);transform:translateX(0.6em)}85%{-webkit-transform:translateX(-0.2em);transform:translateX(-0.2em)}95%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@keyframes shudder-in{0%, to{-webkit-transform:translateX(0em);transform:translateX(0em)}5%, 25%, 45%{-webkit-transform:translateX(-1em);transform:translateX(-1em)}15%, 35%, 55%{-webkit-transform:translateX(1em);transform:translateX(1em)}65%{-webkit-transform:translateX(-0.6em);transform:translateX(-0.6em)}75%{-webkit-transform:translateX(0.6em);transform:translateX(0.6em)}85%{-webkit-transform:translateX(-0.2em);transform:translateX(-0.2em)}95%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@-webkit-keyframes rumble-in{0%, to{-webkit-transform:translateY(0em);transform:translateY(0em)}5%, 25%, 45%{-webkit-transform:translateY(-1em);transform:translateY(-1em)}15%, 35%, 55%{-webkit-transform:translateY(1em);transform:translateY(1em)}65%{-webkit-transform:translateY(-0.6em);transform:translateY(-0.6em)}75%{-webkit-transform:translateY(0.6em);transform:translateY(0.6em)}85%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}95%{-webkit-transform:translateY(0.2em);transform:translateY(0.2em)}}@keyframes rumble-in{0%, to{-webkit-transform:translateY(0em);transform:translateY(0em)}5%, 25%, 45%{-webkit-transform:translateY(-1em);transform:translateY(-1em)}15%, 35%, 55%{-webkit-transform:translateY(1em);transform:translateY(1em)}65%{-webkit-transform:translateY(-0.6em);transform:translateY(-0.6em)}75%{-webkit-transform:translateY(0.6em);transform:translateY(0.6em)}85%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}95%{-webkit-transform:translateY(0.2em);transform:translateY(0.2em)}}@-webkit-keyframes slide-right{0%{-webkit-transform:translateX(-100vw);transform:translateX(-100vw)}}@keyframes slide-right{0%{-webkit-transform:translateX(-100vw);transform:translateX(-100vw)}}@-webkit-keyframes slide-left{0%{-webkit-transform:translateX(100vw);transform:translateX(100vw)}}@keyframes slide-left{0%{-webkit-transform:translateX(100vw);transform:translateX(100vw)}}@-webkit-keyframes slide-up{0%{-webkit-transform:translateY(100vh);transform:translateY(100vh)}}@keyframes slide-up{0%{-webkit-transform:translateY(100vh);transform:translateY(100vh)}}@-webkit-keyframes slide-down{0%{-webkit-transform:translateY(-100vh);transform:translateY(-100vh)}}@keyframes slide-down{0%{-webkit-transform:translateY(-100vh);transform:translateY(-100vh)}}@-webkit-keyframes flicker{0%,29%,31%,63%,65%,77%,79%,86%,88%,91%,93%{opacity:0}30%{opacity:0.2}64%{opacity:0.4}78%{opacity:0.6}87%{opacity:0.8}92%, to{opacity:1}}@keyframes flicker{0%,29%,31%,63%,65%,77%,79%,86%,88%,91%,93%{opacity:0}30%{opacity:0.2}64%{opacity:0.4}78%{opacity:0.6}87%{opacity:0.8}92%, to{opacity:1}}.debug-mode tw-expression[type=hookref]{background-color:rgba(115,123,140,0.15)}.debug-mode tw-expression[type=hookref]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"?" attr(name)}.debug-mode tw-expression[type=variable]{background-color:rgba(140,128,115,0.15)}.debug-mode tw-expression[type=variable]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"$" attr(name)}.debug-mode tw-expression[type=tempVariable]{background-color:rgba(140,128,115,0.15)}.debug-mode tw-expression[type=tempVariable]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"_" attr(name)}.debug-mode tw-expression[type=macro]:nth-of-type(4n+0){background-color:rgba(136,153,102,0.15)}.debug-mode tw-expression[type=macro]:nth-of-type(2n+1){background-color:rgba(102,153,102,0.15)}.debug-mode tw-expression[type=macro]:nth-of-type(4n+2){background-color:rgba(102,153,136,0.15)}.debug-mode tw-expression[type=macro][name="for"],.debug-mode tw-expression[type=macro][name="loop"],.debug-mode tw-expression[type=macro][name="print"],.debug-mode tw-expression[type=macro][name="enchant"],.debug-mode tw-expression[type=macro][name="display"]{background-color:rgba(0,170,255,0.1) !important}.debug-mode tw-expression[type=macro][name="if"],.debug-mode tw-expression[type=macro][name="if"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="unless"],.debug-mode tw-expression[type=macro][name="unless"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="elseif"],.debug-mode tw-expression[type=macro][name="elseif"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="else"],.debug-mode tw-expression[type=macro][name="else"]+tw-hook:not([name]){background-color:rgba(0,255,0,0.1) !important}.debug-mode tw-expression[type=macro][name="hidden"],.debug-mode tw-expression[type=macro].false{background-color:rgba(255,0,0,0.2) !important}.debug-mode tw-expression[type=macro][name="hidden"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro].false+tw-hook:not([name]){display:none}.debug-mode tw-expression[type=macro][name="either"],.debug-mode tw-expression[type=macro][name="a"],.debug-mode tw-expression[type=macro][name="dm"],.debug-mode tw-expression[type=macro][name="ds"],.debug-mode tw-expression[type=macro][name="array"],.debug-mode tw-expression[type=macro][name^="sub"],.debug-mode tw-expression[type=macro][name="altered"],.debug-mode tw-expression[type=macro][name="count"],.debug-mode tw-expression[type=macro][name^="data"],.debug-mode tw-expression[type=macro][name="find"],.debug-mode tw-expression[type=macro][name$="ed"],.debug-mode tw-expression[type=macro][name$="-pass"],.debug-mode tw-expression[type=macro][name="range"],.debug-mode tw-expression[type=macro][name^="num"],.debug-mode tw-expression[type=macro][name^="str"],.debug-mode tw-expression[type=macro][name="text"],.debug-mode tw-expression[type=macro][name^="lower"],.debug-mode tw-expression[type=macro][name^="upper"],.debug-mode tw-expression[type=macro][name="words"],.debug-mode tw-expression[type=macro][name="ceil"],.debug-mode tw-expression[type=macro][name="floor"],.debug-mode tw-expression[type=macro][name="random"],.debug-mode tw-expression[type=macro][name="abs"],.debug-mode tw-expression[type=macro][name="cos"],.debug-mode tw-expression[type=macro][name="exp"],.debug-mode tw-expression[type=macro][name^="log"],.debug-mode tw-expression[type=macro][name="max"],.debug-mode tw-expression[type=macro][name="min"],.debug-mode tw-expression[type=macro][name="pow"],.debug-mode tw-expression[type=macro][name="sign"],.debug-mode tw-expression[type=macro][name="sin"],.debug-mode tw-expression[type=macro][name="sqrt"],.debug-mode tw-expression[type=macro][name="tan"],.debug-mode tw-expression[type=macro][name="round"],.debug-mode tw-expression[type=macro][name^="hsl"],.debug-mode tw-expression[type=macro][name^="rgb"]{background-color:rgba(255,255,0,0.2) !important}.debug-mode tw-expression[type=macro][name$="-game"],.debug-mode tw-expression[type=macro][name="move"],.debug-mode tw-expression[type=macro][name="put"],.debug-mode tw-expression[type=macro][name="set"]{background-color:rgba(255,128,0,0.2) !important}.debug-mode tw-expression[type=macro][name^="link"],.debug-mode tw-expression[type=macro][name$="-link"],.debug-mode tw-expression[type=macro][name="dropdown"],.debug-mode tw-expression[type=macro][name^="click"],.debug-mode tw-expression[type=macro][name="goto"],.debug-mode tw-expression[type=macro][name="undo"],.debug-mode tw-expression[type=macro][name^="mouseo"]{background-color:rgba(32,191,223,0.2) !important}.debug-mode tw-expression[type=macro][name^="replace"],.debug-mode tw-expression[type=macro][name^="prepend"],.debug-mode tw-expression[type=macro][name^="append"],.debug-mode tw-expression[type=macro][name="show"],.debug-mode tw-expression[type=macro][name^="remove"]{background-color:rgba(223,96,32,0.2) !important}.debug-mode tw-expression[type=macro][name="event"],.debug-mode tw-expression[type=macro][name="live"]{background-color:rgba(32,32,223,0.2) !important}.debug-mode tw-expression[type=macro][name="align"],.debug-mode tw-expression[type=macro][name^="colo"],.debug-mode tw-expression[type=macro][name="background"],.debug-mode tw-expression[type=macro][name="css"],.debug-mode tw-expression[type=macro][name="font"],.debug-mode tw-expression[type=macro][name="hook"],.debug-mode tw-expression[type=macro][name$="-style"],.debug-mode tw-expression[type=macro][name^="text-"],.debug-mode tw-expression[type=macro][name^="transition"],.debug-mode tw-expression[type=macro][name^="t8n"],.debug-mode tw-expression[type=macro][name="live"]{background-color:rgba(255,191,0,0.2) !important}.debug-mode tw-expression[type=macro]::before{content:"(" attr(name) ":)";padding:0 0.5rem;font-size:1rem;vertical-align:middle;line-height:normal;background-color:inherit;border:1px solid rgba(255,255,255,0.5)}.debug-mode tw-hook{background-color:rgba(0,85,255,0.1) !important}.debug-mode tw-hook::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"["}.debug-mode tw-hook::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"]"}.debug-mode tw-hook[name]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"]<" attr(name) "|"}.debug-mode tw-pseudo-hook{background-color:rgba(255,170,0,0.1) !important}.debug-mode tw-collapsed::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"{"}.debug-mode tw-collapsed::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"}"}.debug-mode tw-verbatim::before,.debug-mode tw-verbatim::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"`"}.debug-mode tw-align[style*="text-align: center"]{background:linear-gradient(to right, rgba(255,204,189,0) 0%, rgba(255,204,189,0.25) 50%, rgba(255,204,189,0) 100%)}.debug-mode tw-align[style*="text-align: left"]{background:linear-gradient(to right, rgba(255,204,189,0.25) 0%, rgba(255,204,189,0) 100%)}.debug-mode tw-align[style*="text-align: right"]{background:linear-gradient(to right, rgba(255,204,189,0) 0%, rgba(255,204,189,0.25) 100%)}.debug-mode tw-column{background-color:rgba(189,228,255,0.2)}.debug-mode tw-enchantment{animation:enchantment 0.5s infinite;-webkit-animation:enchantment 0.5s infinite;border:1px solid}.debug-mode tw-link::after,.debug-mode tw-broken-link::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:attr(passage-name)}.debug-mode tw-include{background-color:rgba(204,128,51,0.1)}.debug-mode tw-include::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:attr(type) ' "' attr(title) '"'}@keyframes enchantment{0%,to{border-color:#ffb366}50%{border-color:#6fc}}@-webkit-keyframes enchantment{0%,to{border-color:#ffb366}50%{border-color:#6fc}}tw-debugger{position:fixed;box-sizing:border-box;bottom:0;right:0;z-index:999999;min-width:10em;min-height:1em;padding:0em 1em 1em 1em;font-size:1.25em;font-family:sans-serif;color:#000;border-left:solid #000 2px;border-top:solid #000 2px;border-top-left-radius:.5em;background:#fff;opacity:1}tw-debugger select{margin-right:1em;width:12em}tw-debugger button{border-radius:3px;border:solid #999 1px;margin:auto 4px;background-color:#fff;font-size:inherit;color:#000}tw-debugger button.enabled{background-color:#eee;box-shadow:inset #ddd 3px 5px 0.5em}tw-debugger .panel{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:absolute;bottom:100%;left:-2px;right:0;padding:1em;max-height:40vh;overflow-y:scroll;overflow-x:hidden;z-index:999998;background:#fff;border:inherit;border-bottom:solid #999 2px;border-top-left-radius:.5em;border-bottom-left-radius:.5em;font-size:0.8em}tw-debugger .panel:empty,tw-debugger .panel[hidden]{display:none}tw-debugger .panel table{border-spacing:0px}tw-debugger .variable-row{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;flex-shrink:0}tw-debugger .variable-row:nth-child(2n){background:#EEE}tw-debugger .variable-name{display:inline-block;width:50%}tw-debugger .temporary-variable-scope{opacity:0.8;font-size:0.75em}tw-debugger .temporary-variable-scope::before{content:" in "}tw-debugger .global::before{content:"$"}tw-debugger .temporary::before{content:"_"}tw-debugger .variable-path{opacity:0.4}tw-debugger .variable-value{display:inline-block;width:50%}tw-debugger .error-row{background-color:rgba(230,101,204,0.3)}tw-debugger .error-row:nth-child(2n){background-color:rgba(237,145,219,0.3)}tw-debugger .error-row *{padding:0.25em 0.5em}tw-debugger .error-row .error-message{cursor:help}tw-debugger .panel-source{font-family:monospace;overflow-x:scroll;white-space:pre}tw-debugger .tabs{padding-bottom:0.5em}tw-debugger .tab{border-radius:0px 0px 0.5em 0.5em;border-top:none}tw-dialog{z-index:999997;position:fixed;left:auto;right:auto;bottom:auto;top:auto;border:#fff solid 2px;padding:2em;color:#fff;background-color:#000;display:block;max-width:50vw;max-height:75vh;overflow:hidden}tw-dialog input[type=text]{font-size:inherit;width:100%}tw-backdrop{z-index:999996;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.8);display:flex;align-items:center;justify-content:center}tw-link,.link,tw-icon,.enchantment-clickblock{cursor:pointer}tw-link,.enchantment-link{color:#4169E1;font-weight:bold;text-decoration:none;transition:color 0.2s ease-in-out}tw-passage tw-enchantment[style^="color"] tw-link:not(:hover),tw-passage tw-enchantment[style*=" color"] tw-link:not(:hover),tw-passage tw-enchantment[style^="color"] .enchantment-link:not(:hover),tw-passage tw-enchantment[style*=" color"] .enchantment-link:not(:hover){color:inherit}tw-link:hover,.enchantment-link:hover{color:#00bfff}tw-link:active,.enchantment-link:active{color:#DD4B39}.visited{color:#6941e1}tw-passage tw-enchantment[style^="color"] .visited:not(:hover),tw-passage tw-enchantment[style*=" color"] .visited:not(:hover){color:inherit}.visited:hover{color:#E3E}tw-broken-link{color:#993333;border-bottom:2px solid #993333;cursor:not-allowed}tw-passage tw-enchantment[style^="color"] tw-broken-link:not(:hover),tw-passage tw-enchantment[style*=" color"] tw-broken-link:not(:hover){color:inherit}.enchantment-mouseover{border-bottom:1px dashed #666}.enchantment-mouseout{border:rgba(64,149,191,0.25) 1px solid}.enchantment-mouseout:hover{background-color:rgba(64,149,191,0.25);border:transparent 1px solid;border-radius:0.2em}.enchantment-clickblock{box-shadow:inset 0 0 0 0.5vmax;display:block;color:rgba(65,105,225,0.5);transition:color 0.2s ease-in-out}.enchantment-clickblock:hover{color:rgba(0,191,255,0.5)}.enchantment-clickblock:active{color:rgba(222,78,59,0.5)}html{margin:0;height:100%;overflow-x:hidden}*,:before,:after{position:relative;box-sizing:inherit}body{margin:0;height:100%}tw-storydata{display:none}tw-story{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;font:100% Georgia, serif;box-sizing:border-box;width:100%;min-height:100%;font-size:1.5em;line-height:1.5em;padding:5% 20%;margin:0;overflow:hidden;background-color:#000;color:#fff}tw-story br[data-cons]{display:block;height:0;margin:0.8ex 0}tw-story select{background-color:transparent;font:inherit;border-style:solid;padding:2px}tw-story select:not([disabled]){color:inherit}tw-passage{display:block}tw-sidebar{left:-5em;width:3em;position:absolute;text-align:center;display:block}tw-icon{display:block;margin:0.5em 0;opacity:0.2;font-size:2.75em}tw-icon:hover{opacity:0.4}tw-hook:empty,tw-expression:empty{display:none}tw-error{display:inline-block;border-radius:0.2em;padding:0.2em;font-size:1rem;cursor:help}tw-error.error{background-color:rgba(223,58,190,0.4);color:#fff}tw-error.warning{background-color:rgba(223,140,58,0.4);color:#fff;display:none}.debug-mode tw-error.warning{display:inline}tw-error-explanation{display:block;font-size:0.8rem;line-height:1rem}tw-error-explanation-button{cursor:pointer;line-height:0em;border-radius:1px;border:1px solid black;font-size:0.8rem;margin:0 0.4rem;opacity:0.5}tw-error-explanation-button .folddown-arrowhead{display:inline-block}tw-notifier{border-radius:0.2em;padding:0.2em;font-size:1rem;background-color:rgba(223,182,58,0.4);display:none}.debug-mode tw-notifier{display:inline}tw-notifier::before{content:attr(message)}tw-colour{border:1px solid black;display:inline-block;width:1em;height:1em}h1{font-size:3em}h2{font-size:2.25em}h3{font-size:1.75em}h1,h2,h3,h4,h5,h6{line-height:1em;margin:0.3em 0 0.6em 0}pre{font-size:1rem;line-height:initial}small{font-size:70%}big{font-size:120%}mark{color:rgba(0,0,0,0.6);background-color:#ff9}ins{color:rgba(0,0,0,0.6);background-color:rgba(255,242,204,0.5);border-radius:0.5em;box-shadow:0em 0em 0.2em #ffe699;text-decoration:none}center{text-align:center;margin:0 auto;width:60%}blink{text-decoration:none;animation:fade-in-out 1s steps(1, end) infinite alternate;-webkit-animation:fade-in-out 1s steps(1, end) infinite alternate}tw-align{display:block}tw-columns{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-justify-content:space-between;justify-content:space-between}tw-outline{color:white;text-shadow:-1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000}tw-shadow{text-shadow:0.08em 0.08em 0.08em #000}tw-emboss{text-shadow:0.08em 0.08em 0em #000;color:white}tw-condense{letter-spacing:-0.08em}tw-expand{letter-spacing:0.1em}tw-blur{color:transparent;text-shadow:0em 0em 0.08em #000}tw-blurrier{color:transparent;text-shadow:0em 0em 0.2em #000}tw-blurrier::selection{background-color:transparent;color:transparent}tw-blurrier::-moz-selection{background-color:transparent;color:transparent}tw-smear{color:transparent;text-shadow:0em 0em 0.02em rgba(0,0,0,0.75),-0.2em 0em 0.5em rgba(0,0,0,0.5),0.2em 0em 0.5em rgba(0,0,0,0.5)}tw-mirror{display:inline-block;transform:scaleX(-1);-webkit-transform:scaleX(-1)}tw-upside-down{display:inline-block;transform:scaleY(-1);-webkit-transform:scaleY(-1)}tw-fade-in-out{text-decoration:none;animation:fade-in-out 2s ease-in-out infinite alternate;-webkit-animation:fade-in-out 2s ease-in-out infinite alternate}tw-rumble{-webkit-animation:rumble linear 0.1s 0s infinite;animation:rumble linear 0.1s 0s infinite;display:inline-block}tw-shudder{-webkit-animation:shudder linear 0.1s 0s infinite;animation:shudder linear 0.1s 0s infinite;display:inline-block}tw-shudder-in{animation:shudder-in 1s ease-out;-webkit-animation:shudder-in 1s ease-out}.transition-in{-webkit-animation:appear 0ms step-start;animation:appear 0ms step-start}.transition-out{-webkit-animation:appear 0ms step-end;animation:appear 0ms step-end}[data-t8n^=dissolve].transition-in{-webkit-animation:appear .8s;animation:appear .8s}[data-t8n^=dissolve].transition-out{-webkit-animation:appear .8s reverse;animation:appear .8s reverse}[data-t8n^=shudder].transition-in{display:inline-block;-webkit-animation:shudder-in .8s;animation:shudder-in .8s}[data-t8n^=shudder].transition-out{display:inline-block;-webkit-animation:shudder-in .8s reverse;animation:shudder-in .8s reverse}[data-t8n^=rumble].transition-in{display:inline-block;-webkit-animation:rumble-in .8s;animation:rumble-in .8s}[data-t8n^=rumble].transition-out{display:inline-block;-webkit-animation:rumble-in .8s reverse;animation:rumble-in .8s reverse}[data-t8n^=boxflash].transition-in{-webkit-animation:box-flash .8s;animation:box-flash .8s}[data-t8n^=pulse].transition-in{-webkit-animation:pulse .8s;animation:pulse .8s;display:inline-block}[data-t8n^=pulse].transition-out{-webkit-animation:pulse .8s reverse;animation:pulse .8s reverse;display:inline-block}[data-t8n^=slideleft].transition-in{-webkit-animation:slide-left .8s;animation:slide-left .8s;display:inline-block}[data-t8n^=slideleft].transition-out{-webkit-animation:slide-right .8s reverse;animation:slide-right .8s reverse;display:inline-block}[data-t8n^=slideright].transition-in{-webkit-animation:slide-right .8s;animation:slide-right .8s;display:inline-block}[data-t8n^=slideright].transition-out{-webkit-animation:slide-left .8s reverse;animation:slide-left .8s reverse;display:inline-block}[data-t8n^=slideup].transition-in{-webkit-animation:slide-up .8s;animation:slide-up .8s;display:inline-block}[data-t8n^=slideup].transition-out{-webkit-animation:slide-down .8s reverse;animation:slide-down .8s reverse;display:inline-block}[data-t8n^=slidedown].transition-in{-webkit-animation:slide-down .8s;animation:slide-down .8s;display:inline-block}[data-t8n^=slidedown].transition-out{-webkit-animation:slide-up .8s reverse;animation:slide-up .8s reverse;display:inline-block}[data-t8n^=flicker].transition-in{-webkit-animation:flicker .8s;animation:flicker .8s}[data-t8n^=flicker].transition-out{-webkit-animation:flicker .8s reverse;animation:flicker .8s reverse}[data-t8n$=fast]{animation-duration:.4s;-webkit-animation-duration:.4s}[data-t8n$=slow]{animation-duration:1.6s;-webkit-animation-duration:1.6s}
</style>
</head>
<body>
<tw-story></tw-story>
<tw-storydata name="Attributes Generator" startnode="1" creator="Twine" creator-version="2.3.9" ifid="14BC3615-1F7F-4326-9EF7-7A9E4CBF120B" zoom="0.6" format="Harlowe" format-version="3.1.0" options="" hidden><style role="stylesheet" id="twine-user-stylesheet" type="text/twine-css">body, tw-story
{
font-family: Garamond, Palantino, serif;
color: black;
link-color: black;
background: #D6EBD9
}
tw-sidebar {
display: none;
}</style><script role="script" id="twine-user-script" type="text/twine-javascript"></script><tw-tag name="Stats-Branch" color="green"></tw-tag><tw-passagedata pid="1" name="Start" tags="" position="778,432" size="100,100">{(set: $classoptions to (a:"God"))
(set: $superpowers to "Knacks")
(set: $landName to "Alpha")
(set: $landName to "Agency Alpha")
(set: $classes to (a:))
(set: $statoptions to (a:))
(set: $stats to (a:))
(set: $profCost to 5)
(set: $nestedSkillsDescr to "These will give you various bonuses and advantages, as determined by the GM.")
(set: $drugName to (either:"Story", "Story", "Pyro", "Lurk", "Vurt", "Confabulation", "Noon", "Light", "Weed", "Crack", "Sticky Blue", "Cake", "Gush"))
(set: $nestedSkills to "")
(set: $lyricalCharacter to "")
}(go-to:"Generate Another")</tw-passagedata><tw-passagedata pid="2" name="Physical Stats" tags="" position="1285,1024" size="100,100">{(set:$statoptions to (a: "Brawn", "Physical", "Might", "Physique", "Power", "Body", "Physical Strength", "Force"))
(set:$statoptions to it + (a:(either:"Oomph", "Puissance", "Thews", "Strength", "Mightiness", "Bod", "Decked", "Beef", "Beefiness", "Stacked", "Buffness", "Muscle", "Vigor", "Zest", "Athleticism", "Solidity", "Vitality", "Meatiness", "Constitution", "Stamina", "Resilience", "Prowess", "Mettle", "Grit")))
(set: _temp to (random:1,3))
(if: _temp>1)[(display:"Fork Physical")] (else:)[(display:"Add to Stats")]}</tw-passagedata><tw-passagedata pid="3" name="Add to Stats" tags="" position="930,343" size="100,100">{(set: _temp to (random:1,4))
(if: _temp is 1) [(display:"Add Strange Stats")]
(if: _temp > 1) [(display:"Add Genre Stats")]
(set: $statoptions to (shuffled: ...$statoptions))
(set: $stats to it + (a:$statoptions's 1st))
}</tw-passagedata><tw-passagedata pid="4" name="Fork Physical" tags="" position="1289,1138" size="100,100">Fork Physical. {<!-- Strength and Constitution -->
(set:$statoptions to (a: "Strength", "Strength", "Brawn", "Might", "Physique", "Power", "Force", "Athletics"))
(set:$statoptions to it + (a:(either:"Oomph", "Smash", "Smashiness", "Breaking Things", "Puissance", "Thews", "Mightiness", "Bod", "Decked", "Beef", "Beefiness", "Stacked", "Buffness", "Muscle", "Vigor", "Zest", "Athleticism", "Solidity", "Vitality", "Meatiness", "Constitution", "Stamina", "Resilience", "Prowess", "Mettle", "Grit")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Strength and Constitution")]
<!-- Dexterity and Speed -->
(set:$statoptions to (a: "Agility", "Dexterity", "Agility", "Dexterity"))
(set:$statoptions to it + (a:(either:"Nimbleness", "Speed", "Reflexes", "Quickness")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Dexterity and Speed")]}</tw-passagedata><tw-passagedata pid="5" name="Fork Strength and Constitution" tags="" position="1349,1259" size="100,100">Fork Strength and Constitution. {<!-- Strength -->
(set:$statoptions to (a: "Strength", "Strength", "Might", "Force"))
(set:$statoptions to it + (a:(either:"Athleticism", "Power", "Melee", "Warfare", "Fighting", "Brawling", "Brawl", "Oomph", "Puissance", "Thews", "Mightiness", "Muscle", "Decked", "Beef", "Beefiness", "Stacked", "Buffness", "Attack")))
(display:"Add to Stats")
<!-- Stamina and Miscellaneous -->
(set:$statoptions to (a: "Constitution", "Stamina", "Resilience", "Resistance", "Endurance", "Health"))
(set:$statoptions to it + (a:(either:"Vitality", "Fortitude", "Solidity")))
(set:$statoptions to it + (a:(either:"Defense", "Armor", "Protection", "Pluck", "Doggedness", "Drive", "Regeneration", "Healing Factor", "Recovery", "Physical Potential", "Energy", "Reserves", "Wind", "Persistence", "Indominitability", "Physical Luck", "Bodily Luck", "Immunity", "Immune System", "Poison Resistance", "Zest", "Encumberance", "Carrying Capacity", "Damage Reduction")))
(set:$statoptions to it + (a:(either:"Magic Resistance", "Anti-Magic")))
(set:$statoptions to it + (a:(either:"Antibodies")))
(display:"Add to Stats")}</tw-passagedata><tw-passagedata pid="6" name="Add Strange Stats" tags="" position="1167,469" size="100,100"><!-- Add the option of a slightly strange stat, especially to a forking set or an otherwise hand-crafted set. Is this actually working? Maybe it is now, not sure -->
<!-- Also, this randomly varies the drug name for the SF Hooks from time to time -->
<!-- This was created fairly early, when the generator was mainly focused on the Mind/Body/Spirit (or Social) trio, and splitting those to different levels of granularity. This sub-generator was supposed to spice up the attribute sets a bit. There are actually much 'stranger' stats elsewhere (e.g. Selecting Two Concepts Big List and Pick Stats from One Sack) -->
{
(set: $strangestats to it +1)
(if: $strangestats is 1)[(set: $temp to (either:"Calmness", "Gentleness", "Compassion", "Spirituality", "Honesty", "Happiness", "Confidence", "Wellbeing", "Selfishness", "Style", "Apologising", "Cynicism", "Queerness"))]
(if: $strangestats is 2)[(set: $temp to (either:"Wretchedness", "Obliviousness", "X Factor", "Karma", "Rhythm"))]
(if: $strangestats is 3)[(set: $temp to (either:"Sycophancy", "Seduction", "Courtesy", "Flakiness", "Unflappability", "Blood Pressure", "Forgiving", "Forgiveability", "Hygiene", "Licking", "Lurking", "Being Up For It", "Spatial Sense", "Depression", "Crying", "Laughter", "Shame", "Temperance", "Teeth", "Popularity", "Forgetfulness", "Vanity", "Retentiveness", "Sheen", "Snark", "Sustainability", "Proprioception"))]
(if: $strangestats is 4)[(set: $temp to (either:"Tidiness", "Hunches", "Packing", "Parking", "Fetch", "Endearingness", "Confabulation", "Fantasy", "Heat", "Homing", "Anxiety", "Overthinking", "Unflinching", "Innocuousness", "Fluency", "Momentum", "Adorableness", "Underthinking", "Gaze", "Voice", "Navigation", "Orientation", "Thrift", "Filth", "Blasphemy", "Introspection", "Insufferability", "Dissociation"))]
(if: $strangestats is 5)[(set: $temp to (either:"Contemplation", "Paranoia", "Secrets", "Gluttony", "Heft", "Torque", "Logistics", "Drag", "Orthodoxy", "Smugness", "Heroism", "Entanglements", "Monstrosity", "Dress Sense", "Clothes", "Silhouette", "Gravity", "Lust", "Venality", "Opulence", "Heterodoxy", "Criminality", "Inspiration", "Quartermastery", "Cosiness", "Cuteness", "Loyalty", "Transformativity", "Originality"))]
(set:$statoptions to it + (a:$temp))
(set: $drugName to $statoptions's 1st)
}</tw-passagedata><tw-passagedata pid="7" name="Fork Dexterity and Speed" tags="" position="1230,1257" size="100,100">Fork Dexterity and Speed. {<!-- Dexterity -->
(set:$statoptions to (a: "Dexterity", "Dexterity"))
(set:$statoptions to it + (a:(either:"Skill", "Proficiency", "Finesse", "Aim", "Control")))
(display:"Add to Stats")
<!-- Speed, Stealth, Evasiveness and Miscellaneous -->
(set:$statoptions to (a: "Agility", "Nimbleness"))
(set:$statoptions to it + (a:(either:"Stealth", "Stealth", "Sneak", "Camouflage", "Hiding", "Shoplifting", "Pickpocketing")))
(set:$statoptions to it + (a:(either:"Speed", "Movement", "Motion", "Swiftness")))
(set:$statoptions to it + (a:(either:"Initiative", "Reflexes", "Reaction", "Instinct", "Reflex", "Alacrity", "Speediness", "Quickness")))
(set:$statoptions to it + (a:(either:"Dodge", "Evasion", "Evasiveness")))
(set:$statoptions to it + (a:(either:"Tumbling", "Acrobatics", "Leaping", "Jumping", "Tumbling", "Climbing")))
(display:"Add to Stats")}</tw-passagedata><tw-passagedata pid="8" name="Mental Stats" tags="" position="738,1036" size="100,100">{(set:$statoptions to (a: "Mental", "Mind", "Wits", "Intellect"))
(set:$statoptions to it + (a:(either:"Intelligence", "Wisdom", "Knowledge")))
(set: _temp to (random:1,3))
(if: _temp>1)[(display:"Fork Mental")] (else:)[(display:"Add to Stats")]}</tw-passagedata><tw-passagedata pid="9" name="Fork Mental" tags="" position="736,1156" size="100,100">Fork Mental. {<!-- Intelligence -->
(set:$statoptions to (a: "Intelligence", "Knowledge", "Intellect"))
(set:$statoptions to it + (a:(either:"IQ", "Smartness", "Strategy", "Brains", "Reason", "Lore", "Education")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Intelligence")]
<!-- Wisdom and Misc -->
(set:$statoptions to (a: "Wisdom", "Awareness", "Insight", "Perception"))
(set:$statoptions to it + (a:(either:"Alertness", "Tactics", "Vigilance", "Wit", "Wits", "Cunning", "Resourcefulness", "Craftiness")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Wisdom and Misc")]}</tw-passagedata><tw-passagedata pid="10" name="Fork Intelligence" tags="" position="656,1264" size="100,100">Fork Intelligence. {<!-- Knowledge -->
(set:$statoptions to (a: "Intelligence", "Intellect", "Learning", "Education", "Knowledge", "Lore"))
(set:$statoptions to it + (a:(either:"Judgment", "Savvy")))
(display:"Add to Stats")
<!-- Reason and Misc -->
(set:$statoptions to (a: "Reason", "Concentration", "Memory", "Will", "Willpower", "Focus"))
(set:$statoptions to it + (a:(either:"Crafting", "Languages", "Communication", "Information", "Pathfinding")))
(set:$statoptions to it + (a:(either:"Mechanics", "Technology", "Engineering")))
(display:"Add to Stats")}</tw-passagedata><tw-passagedata pid="11" name="Fork Wisdom and Misc" tags="" position="789,1263" size="100,100">{Fork Wisdom and Misc. <!-- Wisdom -->
(set:$statoptions to (a: "Wisdom"))
(set:$statoptions to it + (a:(either:"Sagacity", "Insight", "Common Sense")))
(display:"Add to Stats")
<!-- Awareness -->
(set:$statoptions to (a: "Awareness"))
(set:$statoptions to it + (a:(either:"Perception", "Detection", "Alertness", "Observation", "Vigilance")))
(set:$statoptions to it + (a:(either:"Musicality", "Talent")))
(display:"Add to Stats")
}</tw-passagedata><tw-passagedata pid="12" name="Social and Spiritual Stats" tags="" position="997,1035" size="100,100">{(set:$statoptions to (a: "Spirit", "Soul", "Social", "Spiritual", "Psyche", "Personality", "Presence"))
(set:$statoptions to it + (a:(either:"Charisma", "Charm", "Social Skills", "Social Ability")))
(set: _temp to (random:1,2))
(if: _temp>1)[(display:"Fork Social and Spiritual")] (else:)[(display:"Add to Stats")]}</tw-passagedata><tw-passagedata pid="13" name="Fork Social and Spiritual" tags="" position="994,1158" size="100,100">Fork Social and Spiritual. {<!-- Social -->
(set:$statoptions to (a: "Personality", "Charm", "Charisma", "Empathy", "Social"))
(set:$statoptions to it + (a:(either:"Sympathy", "Humanity", "Magnetism", "Intimidation", "Manipulation", "Presence", "Persuasiveness", "Leadership", "Solidarity", "Sweetness", "Sociability", "Affability", "Agreeability", "Amiability", "Rhetoric", "Grace", "Poise", "Polish", "Ease", "Sentiment")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Social")]
<!-- Spiritual -->
(set:$statoptions to (a: "Psyche", "Soul", "Spirit"))
(set:$statoptions to it + (a:(either:"Nous", "Virtue", "Morality", "Character", "Temperance", "Anima", "Animus")))
(set: _temp to (random:1,2))
(if: _temp is 1)[(display:"Add to Stats")] (else:)[(display:"Fork Spiritual")]}</tw-passagedata><tw-passagedata pid="14" name="Fork Social" tags="" position="1051,1273" size="100,100">Fork Social. {<!-- Charm -->
(set:$statoptions to (a: "Charisma", "Charm", "Personality", "Social Skills"))
(set:$statoptions to it + (a:(either:"Persuasiveness", "Persuasion", "Manipulation", "Rhetoric", "Bluffing", "Diplomacy", "Disguise", "Beguilement")))
(set:$statoptions to it + (a:(either:"Leadership", "Magnetism", "Presence", "Influence")))
(set:$statoptions to it + (a:(either:"Conversation", "Performance", "Social Performance")))
(set:$statoptions to it + (a:(either:"Affability", "Agreeability", "Amiability", "Rhetoric", "Grace", "Poise", "Polish", "Ease", "Sweet-talking", "Small talk", "Chitchat", "Pleasantries", "Dazzle")))
(set:$statoptions to it + (a:(either:"Taste", "Fashion")))
(display:"Add to Stats")
<!-- Empathy and Misc -->
(set:$statoptions to (a: "Empathy"))
(set:$statoptions to it + (a:(either:"Communion", "Compassion", "Warmth", "Care", "Glow", "Solidarity", "Humanity", "Rapport", "Sympathy")))
(set:$statoptions to it + (a:(either:"Cosmopolitanism", "Dialectics", "Worldliness", "Robustness", "Adaptability", "Flexibility")))
(set:$statoptions to it + (a:(either:"Intimidation", "Aura")))
(set:$statoptions to it + (a:(either:"Comeliness", "Sex Appeal", "Beauty")))
(set:$statoptions to it + (a:(either:"Capital", "Wealth", "Status", "Connections", "Fortune", "Rank", "Social Rank", "Riches")))
(set:$statoptions to it + (a:(either:"Thorniness", "Orneriness", "Grumpiness")))
(display:"Add to Stats")}</tw-passagedata><tw-passagedata pid="15" name="Fork Spiritual" tags="" position="945,1271" size="100,100">Fork Spiritual. {<!-- Mysticism -->
(set:$statoptions to (a: "Wisdom", "Sagacity", "Luck"))
(set:$statoptions to it + (a:(either:"Intuition", "Foresight")))
(set:$statoptions to it + (a:(either:"Fortune", "Destiny", "Fate")))
(set:$statoptions to it + (a:(either:"Imagination", "Reflectiveness", "Reflexivity", "Vision", "Openness", "Myriad-Minded Love")))
(display:"Add to Stats")
<!-- Willpower and Misc -->
(set:$statoptions to (a: "Will", "Willpower", "Psyche", "Soul", "Spirit"))
(set:$statoptions to it + (a:(either:"Nous", "Anima", "Animus")))
(set:$statoptions to it + (a:(either:"Steadfastness", "Virtue", "Morality", "Character", "Temperance", "Anima", "Animus")))
(set:$statoptions to it + (a:(either:"Courage", "Bravery", "Nerves", "Resolve", "Self-Control")))
(display:"Add to Stats")}</tw-passagedata><tw-passagedata pid="16" name="Select a Hand-Crafted Stat Set" tags="Stats-Branch" position="1190,193" size="100,100">{
(set: _temp to (random:74,100))
(if: _temp is 1) [(set: $stats to (a:"Str", "Dex", "Con", "Int", "Wis", "Cha"))]
(if: _temp is 2) [(set: $stats to (a:"Strength", "Agility", "Con", "Knowledge", "Perception")) (display:"Social and Spiritual Stats")]
(if: _temp is 3) [(set: $stats to (a:"Strength", "Agility", "Con", "Knowledge", "Perception", "Stealth")) (display:"Social and Spiritual Stats")]
(if: _temp is 4) [(set: $stats to (a:"Mind", "Body", "Soul"))]
(if: _temp is 5) [(set: $stats to (a:"Mental", "Physical", "Social"))]
(if: _temp is 6) [(set: $stats to (a:"Fire", "Air", "Water", "Earth", "Heart"))]
(if: _temp is 7) [(set: $stats to (a:"Succeeding", "Solving", "Surviving", "Stuff"))]
(if: _temp is 8) [(set: $stats to (a:"Authority", "Humanity", "Ruthlessness", "Will to Live"))]
(if: _temp is 9) [(set: $stats to (a:"Strength", "Perception", "Empathy", "Willpower"))]
(if: _temp is 10) [(set: $stats to (a:"Strength", "Intellect", "Endurance", "Expertise"))]
(if: _temp is 11) [(set: $stats to (a:"Will", "Cognition", "Versatility", "Intensity"))]
(if: _temp is 12) [(set: $stats to (a:"Silver-tongued", "Quick-witted", "Nimble-toed", "Bloodthirsty", "Stout-hearted"))]
(if: _temp is 13) [(set: $stats to (a:"Force", "Finesse", "Insight", "Will"))]
(if: _temp is 14) [(set: $stats to (a:"Fleet", "Strong", "Wise", "Lucky"))]
(if: _temp is 15) [(set: $stats to (a:"Dangerous", "Wise", "Sly", "Brave"))]
(if: _temp is 16) [(set: $stats to (a:"Greed", "Wrath", "Doubt", "Corruption"))]
(if: _temp is 17) [(set: $stats to (a:"Bear", "Owl", "Spider", "Cat"))]
(if: _temp is 18) [(set: $stats to (a:"Hutzpah", "Moxie", "Childlike Wonder", "Cut of Your Jib", "A Certain Je Ne Sais Quoi"))]
(if: _temp is 19) [(set: $stats to (a:"Strength", "Perception", "Endurance", "Charisma", "Intelligence", "Agility", "Luck"))]
(if: _temp is 20) [(set: $stats to (a:"Strength", "Dexterity", "Intelligence", "Health"))]
(if: _temp is 21) [(set: $stats to (a:"Strength", "Dexterity", "Stamina"))]
(if: _temp is 22) [(set: $stats to (a:"Strength", "Dexterity", "Speed", "Stealth"))]
(if: _temp is 23) [(set: $stats to (a:"Strength", "Dexterity", "Speed", "Stealth", "Perception"))]
(if: _temp is 24) [(set: $stats to (a:"Strength", "Dexterity", "Speed", "Stealth", "Perception", "Wealth"))]
(if: _temp is 25) [(set: $stats to (a:"Strength", "Dexterity", "Speed", "Stealth", "Perception", "Wealth", "Status"))]
(if: _temp is 26) [(set: $stats to (a:"Brains", "Brawn", "Bounce"))]
(if: _temp is 27) [(set: $stats to (a:"Rage", "Cruelty", "Cowardice", "Blood"))]
(if: _temp is 28) [(set: $stats to (a:"Strength", "Skill", "Thought"))]
(if: _temp is 29) [(set: $stats to (a:"Strength", "Dexterity", "Intelligence", "Alertness"))]
(if: _temp is 30) [(set: $stats to (a:"Warfare", "Vocational Skill", "Stealth and Perception", "Cosmic Energy"))]
(if: _temp is 31) [(set: $stats to (a:"Brain", "Brawn", "Moves", "Cool"))](if: _temp is 32) [(set: $stats to (a:"Brain", "Brawn", "Moves", "Cool"))]
(if: _temp is 33) [(set: $stats to (a:"Careful", "Clever", "Flashy", "Forceful", "Quick", "Sneaky"))]
(if: _temp is 34) [(set: $stats to (a:"Duty", "Glory", "Justice", "Love", "Power", "Truth"))]
(if: _temp is 35) [(set: $stats to (a:"Agility", "Alertness", "Intelligence", "Strength", "Vitality", "Willpower"))]
(if: _temp is 36) [(set: $stats to (a:"Heart", "Charm", "Courage", "Cunning"))]
(if: _temp is 37) [(set: $stats to (a:"Hot", "Cold", "Volatile", "Dark"))]
(if: _temp is 38) [(set: $stats to (a:"Cool", "Hard", "Hot", "Sharp", "Weird"))]
(if: _temp is 39) [(set: $stats to (a:"Mental", "Physical", "Social", "Mystical"))]
(if: _temp is 40) [(set: $stats to (a:"Body", "Agility", "Reaction", "Strength", "Willpower", "Logic", "Intuition", "Charisma"))]
(if: _temp is 41) [(set: $stats to (a:"Information", "Synthesis", "Imagination"))]
(if: _temp is 42) [(set: $stats to (a:"Thesis", "Antithesis", "Synthesis"))]
(if: _temp is 43) [(set: $stats to (a:"Assault", "Defense", "Command", "Hustle", "Support"))]
(if: _temp is 44) [(set: $stats to (a:"Core Skills", "Peripheral Skills", "Out of Comfort Zone"))]
(if: _temp is 45) [(set: $stats to (a:"Top", "Bottom", "Up", "Down", "Charmed", "Strange"))]
(if: _temp is 46) [(set: $stats to (a:"Wizard", "Rogue", "Warrior", "Cleric"))]
(if: _temp is 47) [(set: $stats to (a:"Style", "Edge", "Cool", "Mind", "Meat", "Synth"))]
(if: _temp is 48) [(set: $stats to (a:"Heart", "Might", "Mind", "Soul"))]
(if: _temp is 49) [(set: $stats to (a:"Psyche", "Strength", "Endurance", "Warfare"))]
(if: _temp is 50) [(set: $stats to (a:"Chewing Gum", "Kicking Ass")) (if:(random:1,2) is 1)[(set: $stats to it + (a:"Gum"))]]
(if: _temp is 51) [(set: $stats to (a:"wtf", "fyi", "lol", "imho"))]
(if: _temp is 52) [(set: $stats to (a:"Head", "Heart", "Hands", "Feet"))]
(if: _temp is 53) [(set: $stats to (a:"Danger", "Freak", "Savior", "Superior", "Mundane"))]
(if: _temp is 54) [(set: $stats to (a:"Honesty", "Compassion", "Valor", "Justice", "Sacrifice", "Honor", "Spirituality", "Humility"))]
(if: _temp is 55) [(set: $stats to (a:"Me", "Friends", "Kin", "Neighbors", "Colleagues", "Comrades", "Strangers", "Foes"))]
(if: _temp is 56) [(set: $stats to (a:"Fuel", "Fantasy", "Faith"))]
(if: _temp is 57) [(set: $stats to (a:"Pride", "Prejudice", "Persuasion", "Sense", "Sensibility"))]
(if: _temp is 57) [(set: $stats to (a:"Charisma", "Uniqueness", "Nerve", "Talent"))]
(if: _temp is 58) [(set: $stats to (a:"Saying It", "Spraying It"))]
(if: _temp is 59) [(set: $stats to (a:"Dank", "Spicy", "Pure"))]
(if: _temp is 60) [(set: $stats to (a:"Utopia", "Dystopia", "Heterotopia"))]
(if: _temp is 61) [(set: $stats to (a:"Anarchist", "Cop", "Socialist"))]
(if: _temp is 62) [(set: $stats to (a:"Reaping", "Sowing"))]
(if: _temp is 63) [(set: $stats to (a:"Strength", "Dexterity", "Wisdom", "Intelligence", "The Skill", "The Wit"))]
(if: _temp is 64) [(set: $stats to (a:"Strength", "Constitution", "Agility", "Quickness", "Appearance", "Memory", "Reasoning", "Presence", "Intuition", "Empathy"))]
(if: _temp is 65) [(set: $stats to (a:"Head", "Shoulders", "Knees", "Toes"
"Intelligence", "Reflexes", "Dexterity", "Body", "Speed", "Empathy", "Craft", "Will", "Luck"))]
(if: _temp is 66) [(set: $stats to (a:"Water", "Wood", "Metal", "Earth", "Fire"))]
(if: _temp is 67) [(set: $stats to (a:"Standing the Heat", "Getting Out of the Kitchen"))]
(if: _temp is 68) [(set: $stats to (a:"Ragnarok", "Rags"))]
(if: _temp is 69) [(set: $stats to (a:"The Streets", "The Sheets"))]
(if: _temp is 70) [(set: $stats to (a:"Fighting", "Daring", "Cheating", "Charming", "Bitching", "Bonking"))]
(if: _temp is 71) [(set: $stats to (a:"Force", "Instinct", "Access"))]
(if: _temp is 72) [(set: $stats to (a:"Management", "Stealth", "Violence", "Hardware", "Software", "Wetware", "Uncommon", "Unhealthy", "Unlikely"))]
(if: _temp is 73) [(set: $stats to (a:"Edge", "Heart", "Iron", "Shadow", "Wits"))]
(if: _temp is 74) [(set: $stats to (a:"Kill", "Intimidate", "Charm", "Deceive", "Persuade", "Bargain", "Empathize"))]
(if: _temp is 75) [(set: $stats to (a:"Strength", "Stamina", "Skill", "Stealth", "Insight", "Lore", "Charm"))]
(if: _temp > 75) [(set: $stats to (a:))
(set: $stats to it + (a:(either: "Strength", "Strength", "Might", "Power", "Brawn", "Warfare", "Athletics")))
(set: $stats to it + (a:(either: "Iron", "Constitution", "Endurance", "Toughness", "Stamina", "Health", "Recovery", "Speed", "Quickness", "Intuition", "Spirit", "Will", "Insight", "Bravery", "Valor")))
(set: $stats to it + (a:(either: "Agility", "Dexterity", "Skill", "Agility", "Dexterity", "Skill", "Finesse", "Nimbleness", "Poise")))
(set: $stats to it + (a:(either: "Discretion", "Diplomacy", "Wisdom", "Perception", "Awareness", "Stealth", "Stealth", "Shadow")))
(set: $stats to it + (a:(either: "Charm", "Charisma", "Knowledge", "Cunning", "Education", "Lore", "Intelligence", "Wealth")))]
(set:_temp to (random:1,5))
(if:_temp is 2) [(set: $stats to (sorted: ...$stats))]
(if:_temp is 3) [(set: $stats to (shuffled: ...$stats))]
(if:_temp > 3) [(set:$strangestats to (random:1, 5)) (display:"Add Strange Stats") (set: $stats to it + (a:(either: ... $statoptions)))]
}</tw-passagedata><tw-passagedata pid="17" name="Add Genre Stats" tags="" position="1048,349" size="100,100">Add a genre stat. {(if:$isSF is true)[(display:"Add SF Stats")]
(if:$isFantasy is true)[(display:"Add Fantasy Stats")]}</tw-passagedata><tw-passagedata pid="18" name="Add SF Stats" tags="" position="932,466" size="100,100">Add a genre stat. {(set: $genrestats to it +1)
(if: $genrestats is 1) [(set:$statoptions to it + (a:(either:"Epidemiology", "Battlesuits", "Astronomy", "Astrophysics", "Network Administration", "Counterfeiting", "Cryptography", "Cybersecurity", "Enthrallment", "Media", "Psychotronics", "Fast Talking", "Gunnery", "Procedural Generation")))]
(if: $genrestats is 2) [(set:$statoptions to it + (a:(either:"Psychokinesis", "Mathematics", "Cracking", "Robotics", "Biology", "Throwing", "Xenocognition", "Systems Science", "Scavenging","Ecology", "Data Perceptualization", "Mediation")))]
(if: $genrestats is 3) [(set:$statoptions to it + (a:(either:"Demolitions", "Bargaining", "Systems Repair", "Medicine", "Medic", "Nanotech", "Genetics", "Psi Shield", "Chaoplexity", "Construction", "Data Science", "Cybersecurity", "Microstate Power", "Telepathy", "Printing", "Fastcraft", "Recycling", "Repurposing")))]
(if: $genrestats is 4) [(set:$statoptions to it + (a:(either:"Trade", "Astography", "Low G Martial Arts", "Low G Acrobatics", "Esper Sense", "Xenolinguistics", "Languages", "Cultures", "Business", "Bureaucracy", "Research", "Security", "Streetwise", "Tactics", "Interfaces")))]
(if: $genrestats is 5) [(set:$statoptions to it + (a:(either:"Programming", "Hacking", "Neural Interface", "AI", "Networking", "Xenobiology", "Xenopaleography", "Quantum Computing", "Firearms", "Explosives", "Exoskeleton", "Piloting", "Engineering", "Mathematics", "Data Science", "Vehicle Operation")))]
}</tw-passagedata><tw-passagedata pid="19" name="Add Fantasy Stats" tags="" position="1052,464" size="100,100">Add a genre stat. {(set: $genrestats to it +1)
(if: $genrestats is 1) [(set:$statoptions to it + (a:(either:"Agriculture", "Ransacking", "Burglary", "Commerce", "Nature", "Natureculture", "Culture", "Dark Arts", "Necromancy", "Healing", "Acrobatics", "Ambushing", "Animal Handling", "Animal Husbandry", "Animal Training", "Beastmastery", "Appraisal", "Astrology", "Haruspexy", "Autopsy", "Balance", "Bladesmithing", "Brewing", "Bribery", "Bureaucracy", "Business", "Corruption", "Campcraft", "Carpentry", "Cartography", "Cooking", "Criminality")))]
(if: $genrestats is 2) [(set:$statoptions to it + (a:(either:"Vortexwalking", "Evocations", "Mystic Sense", "Mercantilism", "Finance", "Nobility", "Dancing", "Diplomacy", "Distance Running", "Distilling", "Diving", "Drinking", "Runes", "Drawing", "Reality-Hacking", "Embalming", "Heckling", "Farming", "Fishing", "Fisticuffs", "Folk Lore", "Foraging", "Forgery", "Gambling", "Haggling", "Joinery", "Healing Arts", "Pyromancy", "Witchcraft")))]
(if: $genrestats is 3) [(set:$statoptions to it + (a:(either:"Heraldry", "Herbalism", "Herding", "Hiding", "History", "Law", "Lockpicking", "Logistics", "Martial Arts", "Mathematics", "Music", "Navigation", "Net Making", "Orienteering", "Philosophy", "Poetry", "Natural Philosophy", "Political Science", "Public Speaking")))]
(if: $genrestats is 4) [(set:$statoptions to it + (a:(either:"Research", "Control Weather", "Illusions", "Riding", "Rowing", "Sailing", "Shadowing", "Shipwright", "Shielding", "Singing", "Sleights of Hand", "Sports", "Snatch Game", "Sprinting", "Storytelling", "Strategy", "Bard", "Streetwise", "Thaumaturgy", "Enchantment")))]
(if: $genrestats is 5) [(set:$statoptions to it + (a:(either:"Arcana", "Swimming", "Seafaring", "Pedagogy", "Teaching", "Tracking", "Learning", "Trapping", "Theology", "Wine-Making", "Weight-Lifting", "Writing", "Animation", "Underwater Breathing", "Weatherworking", "Astral Projection", "Psionics", "Mana", "Dispellations", "Invocations", "Abjurations", "Cantrips", "Divinity", "Profanity", "Shapeshifting", "Lockpicking", "Countermagic", "Herbcraft", "Leatherworking", "Masonry", "Siegecraft", "Smithing", "Chirurgery", "Home Economics", "Survival", "Theology", "Piracy", "Scribing")))]
}</tw-passagedata><tw-passagedata pid="20" name="Display System" tags="" position="480,548" size="100,100">[[Generate Another]] | [[About RPG Generator]]
**Theme**
$fullRPGDescr.
**Getting Started**(display:"Getting Started")
**Actions**
(unless: $overallApproach<4)[Your (print:$stats's length) (print:$attributes), (for: each _attribute, ...$stats)[_attribute, ]help decide what happens whenever you do something risky.
]$resMechanic
[[Generate Another]] | [[About RPG Generator]]
<a href="http://www.sadpressgames.com/">www.sadpressgames.com</a>
{(set:$statoptions to (a:))
(set: $classoptions to (a:"Fighter", "Engineer", "Gunslinger", "Assassin", "Counsellor", "Shapeshifter", "Thief", "Rogue", "Soldier", "Diplomat", "Guard", "Pirate", "Ranger"))
(set: $superpowers to (either:"Powers", "Powers", "Gifts", "Gifts", "Stunts", "Super Powers", "Feats", "Special Abilities", "Supernormal Skills", "Paranormal Powers", "Boons", "Talents"))
(set:$landName to "blank")
(set:$nestedSkills to "")
(set:$nestedSkillDescr to "")
(set:$lyricalCharacter to false)
}</tw-passagedata><tw-passagedata pid="21" name="Type of Attributes" tags="" position="1397,188" size="100,100">{
(set: $systemType to (random:1,75))
(set: $statsNumber to $stats's length)
(set: $statsGen to "Unknown")
(set: $statsType to "Unknown")
(set: $statsType to "Unknown")
(set: $resMechanic to "Unknown")
(set: $conflictRes to "roll above target")
(set: $attributes to "attributes")
(set: $levelUp to "")
(set: $extraRule to "Character Progression")
<--! Some d20 type systems -->
(if: $systemType < 15) [(set:$minStat to 1) (set:$maxStat to 20) (set: $nestedSkillsDescr to "If you possess a relevant ''proficiency'', get a bonus of 2 on any $attributes check.") (if:(random:1,3) is 1)[(set: $nestedSkillsDescr to it + " If you make a good case for an apparently irrelevant proficiency, the GM may award a bonus of 1.")]]
(if: $systemType < 8) [(set:$minStat to 3) (set:$maxStat to 18)]
<--! Some 1d8, 2d6 etc. systems -->
(if: $systemType is > 15)[
(if: $systemType is < 24)[
(set: $nestedSkillsDescr to "When you use a relevant ''proficiency'', take a bonus of 1.")]]
(if: $systemType is 16)[(set:$minStat to 1) (set:$maxStat to 4)]
(if: $systemType is 17)[(set:$minStat to 1) (set:$maxStat to 6)]
(if: $systemType is 18)[(set:$minStat to 1) (set:$maxStat to 8)]
(if: $systemType is 19)[(set:$minStat to 1) (set:$maxStat to 10)]
(if: $systemType is 20)[(set:$minStat to 1) (set:$maxStat to 12)]
(if: $systemType is 21)[(set:$minStat to 2) (set:$maxStat to 8)]
(if: $systemType is 22)[(set:$minStat to 2) (set:$maxStat to 12)]
(if: $systemType is 23)[(set:$minStat to 2) (set:$maxStat to 16)]
(if: $systemType is 24)[(set:$minStat to 2) (set:$maxStat to 20)]
(if: $systemType is 25)[(set:$minStat to 2) (set:$maxStat to 24)]
<--! Some dice pool systems -->
(if: $systemType>25)[(if: $systemType<33) [(set: $conflictRes to (either:"d6 dice pool", "d6 dice pool", "d6 dice pool", "d6 dice pool", "d6 dice pool", "d10 dice pool", "d10 dice pool", "d4 dice pool")) (set:$attributes to "dice pools") (set: $nestedSkillsDescr to "
" + (either: "If you possess a relevant ''proficiency'', take an extra die.", "Add one die to your pool for each relevant ''proficiency''.", "If you have a useful ''proficiency'', you can reroll one die."))]]
(if: $systemType is 26)[(set:$minStat to 1) (set:$maxStat to 4)]
(if: $systemType is 27)[(set:$minStat to 1) (set:$maxStat to 6)]
(if: $systemType is 28)[(set:$minStat to 1) (set:$maxStat to 8)]
(if: $systemType is 29)[(set:$minStat to 1) (set:$maxStat to 10)]
(if: $systemType is 30)[(set:$minStat to 1) (set:$maxStat to 12)]
(if: $systemType is 31)[(set:$minStat to 2) (set:$maxStat to 8)]
(if: $systemType is 32)[(set:$minStat to 2) (set:$maxStat to 12)]
<--! Some resource pools systems -->
(if: $systemType>32)[(if: $systemType<41) [(set: $conflictRes to "resource pool") (set:$attributes to "resource pools") (set: $nestedSkillsDescr to "If you possess a relevant ''proficiency'', you may reduce the cost of the spend by up to half, at the GM's discretion.")]
(if: $systemType is 33)[(set:$minStat to 1) (set:$maxStat to 100)]
(if: $systemType is 34)[(set:$minStat to 5) (set:$maxStat to 100)]
(if: $systemType is 35)[(set:$minStat to 6) (set:$maxStat to 36)]
(if: $systemType is 36)[(set:$minStat to 2) (set:$maxStat to 40)]
(if: $systemType is 37)[(set:$minStat to 3) (set:$maxStat to 60)]
(if: $systemType is 38)[(set:$minStat to 5) (set:$maxStat to 500)]
(if: $systemType is 39)[(set:$minStat to 10) (set:$maxStat to 1000)]
(if: $systemType is 40)[(set:$minStat to 1) (set:$maxStat to (random:1,20)*50)]
(display: "Establish Attributes by Points Spend")]
<--! Generate attributes by dice and/or spending points -->
(set: $statsType to "Each is given a score between (print: $minStat) and (print: $maxStat).")
(if: $conflictRes is "d6 dice pool")[(set: $statsType to "Each is represented by a dice pool of between (print: $minStat) and (print: $maxStat) six-sided dice.")]
(if: $conflictRes is "d4 dice pool")[(set: $statsType to "Each is represented by a dice pool of between (print: $minStat) and (print: $maxStat) four-sided dice.")]
(if: $conflictRes is "d10 dice pool")[(set: $statsType to "Each is represented by a dice pool of between (print: $minStat) and (print: $maxStat) ten-sided dice.")]
(if:$systemType>(random:1,80))[(display: "Establish Attributes by Points Spend")]
(if: $statsGen is "Unknown")[(display:"Establish Attributes by Dice Rolls")]
<--! Ranked and unusual systems -->
(if: $systemType>40)[
(set: $nestedSkills to "Also pick up to (random:3,6) proficiencies that reflect your character's background and training:")
(if: $systemType<50) [(set: $conflictRes to "ranked system")]]
(if: $systemType is 41)[(set:$statsType to "Each characteristic is associated with a kind of die, e.g. d4, d6, d8, d10, d12, d20.") (set:$maxStat to 6) (display:"Establish Attributes in a Ranked System") (set: $nestedSkillsDescr to "If you possess a relevant proficiency, use a die one step higher (d4 becomes d6 etc.).")]
(if: $systemType is 42)[(set:$statsType to "Each one is represented by a Tarot card.") (set:$statsGen to "Draw a card at random for each attribute.") (set: $nestedSkillsDescr to "When using a proficiency, you may keep your first draw, or discard it and draw again.")]
(if: $systemType is 43)[(set:$statsType to "Each is represented by a colour.") (set:$statsGen to "Choose a colour for each one. You can choose the same colour more than once.") (set: $nestedSkillsDescr to "When using a proficiency, you may introduce texture or pattern.")]
(if: $systemType is 44)[(set:$statsType to "Each of your $attributes is rated poor, average, above average, good, great, or epic.") (set:$maxStat to 6) (display:"Establish Attributes in a Ranked System") (display:"Establish Attributes in a Ranked System") (set: $nestedSkillsDescr to "If you possess a relevant proficiency, boost yourself one rank (good becomes great, etc.).")]
(if: $systemType is 45)[(set:$statsType to "Each of these is rated poor, average, great, or epic.") (set:$maxStat to 4) (display:"Establish Attributes in a Ranked System") (set: $nestedSkillsDescr to "If you possess a relevant proficiency, boost yourself one rank (good becomes great, etc.).")]
(if: $systemType is 46)[(set:$statsType to "To create your character, rank these (print:$statsNumber) stats from best to worst.") (set:$statsGen to "It's that easy.") (set: $nestedSkillsDescr to "If you possess a relevant proficiency, you can treat a stat as if it were one level up.")]
(if: $systemType is 47)[(set:$statsType to "Each of your $attributes is represented by a playing card.") (set:$statsGen to "Draw a card at random for each attribute.") (set: $nestedSkillsDescr to "If you possess a relevant proficiency, add 1 to the value of your card.")]
(if: $systemType is 48)[(set:$statsType to "Each of your $attributes is represented by some material object or creature in your field of vision.") (set:$statsGen to "At the start of the play session, write a list of what objects represent what attributes. You don't have to show anyone your list. ")]
(if: $systemType is 49)[(set:$statsType to "Each of your $attributes is represented by a Chess piece.") (set:$statsGen to "You will need a Chess set for each player. Each player assigns each type of Chess piece a different attribute, e.g. (print:$stats's 1st): Queen, (print:$stats's 2nd): Pawn. " )
(if: $statsNumber is 7) [(set:$statsGen to it + "The light and dark bishops represent separate attributes. ")]
(if: $statsNumber > 7) [(set:$statsGen to it + "There are lots of attributes, so you'll need to differentiate between e.g. queen's rook and king's rook. ")]]
(if: $systemType is 50)[(set:$statsType to "Each player character is ranked best to worst in each attribute.") (set:$statsGen to "Each attribute is auctioned, beginning with (print:$stats's 1st) and moving down the list. Each player has a total of 100 points to bid with during character creation. The bighest bidder is the best in that attribute, the second-highest second best, etc. All points that are bid are spent (even if you are in last place). " )]
(display:"Conflict Resolution Main Branch")
(if: $systemType>50)[(display:"Hand Crafted System")]
(if: $overallApproach is 5)[
(if: $stats's length<9)[
(set: $resMechanic to it + " " + $nestedSkillsDescr)]]}</tw-passagedata><tw-passagedata pid="22" name="About RPG Generator" tags="" position="647,555" size="100,100"><b>RPG Generator v0.96</b>
This is a little experiment, testing out the possibility of procedurally generating RPGs. Right now it selects a random set of attribute or skills, suggests how to generate values for them and use them to resolve tasks, and sometimes gives glimpses of settings and themes. It could be used for inspiration to design your own tabletop or digital RPG.
A kind of content warning: recombinancy can always have unexpected emergent effects, and I have also copy-pasted some big word lists for rare drops. So there is a slight possibility there might be terrible things lurking in the generator. If something evil pops up, please let me know.
Mostly these things this thing spits out are ragged, beautiful, broken, good, sutured, splintered, splinted, aporetic, injured. They may or may not be playable, but maybe they can gesture toward play as a particular kind of constructive and/or reconstructive healing.
[[Return to Rules->Display System]] | [[Generate Another]]
<a href="http://www.sadpressgames.com/">www.sadpressgames.com</a>
<a href="http://sadpresspoetry.com/">sadpresspoetry.com/</a>
A very few thank-yous: /u/dayminkaynin, /u/zu7iv, /u/ChapelR, and Litza Bronwyn whose guide *You Have Two Stats* I found very helpful. </tw-passagedata><tw-passagedata pid="23" name="Select All Stats from a Random Bag" tags="Stats-Branch" position="193,550" size="100,100">{
<--! Some of these sets do implicit worldbuilding, some don't. The main thing about this branch is that all the attributes will just come out of one 'bag.' So there won't necessarily be the coverage of mental, social, physical, spiritual (in the Forking Trio branch), or the core attributes from two themes plus random attributes from both themes (in the Mash Up branch). Some of the really weird attribute sets come from the big lists here. First, randomly pick a set of attribute options. -->
(set: $stats to (a:))
(if:(random:1,4) is 1)[(set: $stats to (a:"Health", "Strength"))]
(set:_temp to (random:1,22))
(if:_temp<3)[(set:$statoptions to (a:"Eagle", "Mole", "Vole", "Otter", "Fish", "Jellyfish", "Dolphin", "Bear", "Whale", "Panther", "Lion", "Dragon", "Mouse", "Ant", "Cat", "Dog", "Rhino", "Elephant", "Badger", "Hedgehog", "Fox", "Raccoon", "Raven", "Crow", "Dove", "Tiger", "Leopard", "Unicorn", "Possum", "Kangaroo", "Rabbit", "Hare", "Moth", "Wolf", "Monkey", "Pig", "Cow", "Sheep", "Butterfly", "Worm", "Broccoli", "Snail", "Slug", "Falcon", "Puma"))]
(if:_temp is 2)[(set: $statoptions to (altered: _animal via "Space " + _animal, ...$statoptions))]
(if:_temp is 3)[(if:$isSF is true)[(set:$statoptions to (a:"Epidemiology", "Battlesuits", "Astronomy", "Astrophysics", "Network Administration", "Counterfeiting", "Cryptography", "Cybersecurity", "Enthrallment", "Media", "Psychotronics", "Fast Talking", "Gunnery", "Procedural Generation", "Psychokinesis", "Mathematics", "Cracking", "Robotics", "Biology", "Throwing", "Xenocognition", "Systems Science", "Scavenging","Ecology", "Data Perceptualization", "Mediation", "Demolitions", "Bargaining", "Systems Repair", "Medicine", "Simulations", "Statistics", "Risk", "Comms", "Nanotech", "Genetics", "Psi Shield", "Chaoplexity", "Construction", "Data Science", "Cybersecurity", "Microstate Power", "Telepathy", "Trade", "Astography", "Low G Martial Arts", "Low G Acrobatics", "Esper Sense", "Xenolinguistics", "Languages", "Cultures", "Business", "Bureaucracy", "Research", "Security", "Streetwise", "Tactics", "Interfaces","Programming", "Hacking", "Neural Interface", "AI", "Networking", "Xenobiology", "Xenopaleography", "Quantum Computing", "Firearms", "Explosives", "Exoskeleton", "Piloting", "Engineering", "Mathematics", "Data Science", "Vehicle Operation"))](else:)[(set:_temp to 4)]]
(if:_temp is 4)[(if:$isFantasy is true)[(set:$statoptions to (a:"Ransacking", "Burglary", "Commerce", "Nature", "Natureculture", "Culture", "Dark Arts", "Necromancy", "Healing", "Acrobatics", "Ambushing", "Animal Handling", "Animal Husbandry", "Animal Training", "Beastmastery", "Appraisal", "Astrology", "Haruspexy", "Autopsy", "Balance", "Bladesmithing", "Brewing", "Bribery", "Bureaucracy", "Business", "Corruption", "Campcraft", "Carpentry", "Cartography", "Cooking", "Criminality","Vortexwalking", "Evocations", "Mystic Sense", "Mercantilism", "Finance", "Nobility", "Dancing", "Diplomacy", "Distance Running", "Distilling", "Diving", "Drinking", "Drawing", "Embalming", "Heckling", "Farming", "Fishing", "Fisticuffs", "Folk Lore", "Foraging", "Forgery", "Gambling", "Haggle", "Joinery", "Healing Arts", "Pyromancy", "Witchcraft","Heraldry", "Herbalism", "Herding", "Hiding", "History", "Law", "Lockpicking", "Logistics", "Martial Arts", "Mathematics", "Music", "Navigation", "Net Making", "Orienteering", "Philosophy", "Poetry", "Natural Philosophy", "Political Science", "Public Speaking", "Research", "Control Weather", "Illusions", "Riding", "Archery", "Swashbuckling", "Fencing", "Blugeoning", "Backstabbing", "Swordplay", "Rowing", "Sailing", "Shadowing", "Shipwright", "Shielding", "Singing", "Sleights of Hand", "Sports", "Snatch Game", "Sprinting", "Storytelling", "Strategy", "Bardic Arts", "Streetwise", "Thaumaturgy", "Enchantment", "Arcana", "Swimming", "Seafaring", "Pedagogy", "Teaching", "Tracking", "Learning", "Trapping", "Theology", "Wine-Making", "Beastmastery", "Weight-Lifting", "Writing", "Animation", "Underwater Breathing", "Weatherworking", "Astral Projection", "Psionics", "Mana", "Dispellations", "Invocations", "Abjurations", "Cantrips", "Divinity", "Profanity", "Shapeshifting", "Lockpicking", "Countermagic", "Herbcraft", "Leatherworking", "Masonry", "Sorcery", "Demonology", "Angelology", "Seigecraft", "Smithing", "Chirurgery", "Home Economics", "Survival", "Theology", "Piracy", "Scribing"))](else:)[(set:_temp to 5)]]
(if:_temp is 5)[(set:$statoptions to (a:"Strength", "Stamina", "Dexterity", "Intelligence", "Wisdom", "Charisma", "Endurance", "Stealth", "Perception", "Disguise", "Speed", "Mana", "Lore", "Wealth", "Status", "Reflexes", "Swiftness"))]
(if:_temp is 6)[(display:"A Huge List of Adjectives as Attributes") (set:$stats to (a:)) (set:$rpgDescr2 to "which is pretty self-explanatory")]
(if:_temp is 7)[(display:"A Huge List of Adjectives as Attributes") (set:$stats to (a:"strong", "wise", "observant"))]
(if:_temp is 8)[(display:"A Huge List of Adjectives as Attributes") (set:$stats to (a:))]
(if:_temp is 9)[(display:"A Huge List of Adjectives as Attributes") (set:$stats to (a:"strong", "smart", "healthy"))]
(if:_temp is 10)[(display:"A Huge List of Nouns as Attributes") (set:$stats to (a:)) (set:$fullRPGDescr to "RPG of some kind. Maybe")]
(if:_temp is 11)[(display:"A Huge List of Nouns as Attributes") (set:$stats to (a:(either: "health", "strength", "rock", "crystal", "brains", "eye")))]
(if:_temp is 12)[(display:"A Huge List of Verbs as Attributes") (set:$stats to (a:))]
(if:_temp is 13)[(display:"A Huge List of Verbs as Attributes") (set:$stats to (a:"fight", "listen", "learn", "sneak"))]
(if:_temp is 14)[(display:"A Huge List of Verbs as Attributes") (set:$stats to (a:"brawl", "dodge", "flee"))]
(if:_temp is 15)[(display:"A Huge List of Verbs as Attributes") (set:$stats to (a:"hide", "help", "harm"))]
(if:_temp is 16)[(set:$statoptions to (a:"Ash", "Brutality", "Moth", "Sleep", "Trouble", "Wand", "Sparkles", "Maps", "Rights", "Moods", "Fuckery", "Goth", "Emo", "Softboy", "Internet", "Substances", "Textures", "Glue", "Hugs", "Shadows", "Books", "Murdering", "Revolution", "Utopia", "Sparking", "Fabulous", "Shadiness", "Wokeness", "Kvetching", "Sanctimony", "Audit", "Wardrobe", "Impact", "Friendship", "Ballooning", "Hate", "Rage", "Lols", "Love", "Sex", "Feelings", "Cutlasses", "Yearning", "Cats", "High Fives", "Garlic", "Arrows", "Solace", "Shelter"))]
(if:_temp is 17)[(set:$statoptions to (a:"Cracking Wise", "Inner Monologues", "Street Smarts", "Getting Slugged", "Shadowing", "Chiselling", "Laying Low", "Pumping Lead", "Feeling Hinky", "Peaching", "Getaway Sticks", "Shyster", "Fisticuffs", "Having a Drink")) (set:$rpgDescr2 to "set in the big bad city")]
(if:_temp is 18)[(set:$statoptions to (a:"Lorde", "Wollstonecraft", "Beyoncé", "Björk", "Grimes", "Luxemburg", "Bhabha", "Wilde", "Morris", "Žižek", "Mbembe", "Soyinka", "Said", "Gentileschi", "Kahlo", "FKA Twigs", "Krupskaya", "Du Bois", "Da Silva", "Boudica", "Kropotkin", "Davis", "Haraway", "hooks", "Debord", "Bakunin", "The Hulk", "Gandhi", "Butler", "Irigaray", "De Beauvoir", "Hypatia", "Sappho", "Peaches", "Proudhon", "Lenin", "Trotsky", "Sen", "Ru Paul", "Beyonce", "Madonna", "Mandela", "Weil", "Brecht", "Fanon", "Zapata", "L’Ouverture", "Robespierre")) (set:$stats to (a:)) (set:$rpgDescr2 to "about the world we live in")]
(if:_temp is 19)[(display:"A Small List of Character Traits as Attributes") (set:$stats to (a:"Strong", "Healthy"))]
(if:_temp is 20)[(set:$statoptions to (a:"Daken-taijutsu", "Jutai-jatsu", "Taihen-jutsu", "Kenjutsu", "Bojutsu", "Shurikenjutsu", "Naginatajutsu", "Kusarigamajutsu", "Kayakujutsu", "Hensojutsu", "Yogi Gakure", "Joei-on jutsu", "Bajutsu", "Sui-ren", "Bo-ryaku", "Chi-mon", "Choho", "Ten-mon", "Inton-jutsu")) (set:$stats to (a:"Shinobi-iri"))]
(if:_temp is 21)[(set:$statoptions to (a:"Bike Skills", "Grit", "Clown", "Mathlete", "Jock", "Intuition", "Paranormal", "Geek", "Always Prepared", "Flashlight", "Did you hear that?", "Friendship", "Psyche", "Arcana", "Destiny", "Loyalty", "Sneaking Around", "Treasure Hunting", "Swimming", "Rich Kid", "Animal Pal", "I have an idea!", "Help! I'm under here!", "Resistance", "Science Project", "You MADE that?", "Innocuous", "Innocent", "Attuned", "Grown-Up Whisperer", "Smooth", "Backpack", "Popularity", "Survival", "Chill", "Whatever", "So what if it's gross?")) (set:$stats to (a:"Brains", "Brawn", "Fight", "Flight")) (set:$rpgDescr2 to "about kids who stumble into something strange")]
(if:_temp is 22)[(set:$statoptions to (a:"He's Behind Me Isn't He", "Absolutely Not and That's Final", "Slapstick", "Irony", "Catchphrases", "Pratfalls", "Escalation", "Shark-Jumping", "Awwwwwww", "Dramatic Irony", "Farce", "Depth", "Insightfulness", "Care", "Friends", "What's Really Important", "That Went Well", "Too Much Information!", "Did I Say That Out Loud?", "Good Talk", "Lady Boner", "That's Not a Thing!", "Thanks ... I Guess", "Epic Similes", "Mistaken Identities", "See What I Did There?", "That. Just. Happened.", "I Didn't NOT X", "And By X I Mean Y", "Here's The Line, Here's You", "Much Ado About Nothing", "Wacky Roommate", "Twins", "Ew! Ew! Ew! Ew!", "Excuses Excuses", "I Have No Concept of How Rich I Am", "Meta", "Splendid Ham", "I Can't Unsee That", "Shady af", "Impossibly Optimistic", "Anacoluthon", "Good Egg", "Pop Culture References", "Parodies", "Menippean Satire", "Hubris", "Grumpy", "Zany", "Poetic", "Fabulous", "Is There Anything You Guys Want to Tell Me?", "Drama Queen", "Loveable", "Kvetching", "Geeky", "Obessesed", "Besotted", "What Badger?", "You Know When ...", "Well That Killed The Moment", "Suspicious Denials", "Unnecessary Heists", "My Hovercraft is Full of Eels", "Jump, I'll Catch You!", "Dated", "Sex Positive", "Neologisms", "Verbing", "Reaction Shot", "Thought-Proof", "Silly", "Kind", "Innocent", "Lucky", "Scheming", "Vain", "Arrogant", "Greedy", "Horny", "Not Today Satan", "Shut Up, Evil One!", "Repeat Till Funny", "So Bad It's Good")) (set:$stats to (a:"Relatable")) (set:$rpgDescr2 to "filmed in front of a live studio audience")]
(if:(random:1,3) is 1)[(set:$fullRPGDescr to "This looks like a " + (either:"RPG of some kind", "great RPG", "tabletop RPG ideal for these dark days", "RPG well-suited to these strange times"))]
(display: "Pick Stats from One Sack")}</tw-passagedata><tw-passagedata pid="24" name="Pick Stats from One Sack" tags="" position="81,552" size="100,100">(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))
(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))
(if:(random:1,2) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(if:(random:1,2) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(if:(random:1,2) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(if:(random:1,3) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(if:(random:1,3) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(if:(random:1,2) is 1)[(set: _temp to (either:...$statoptions))
(set: $stats to it + (a:_temp))
(set: $statoptions to it - (a:_temp))]
(set: $stats to (shuffled:...$stats))
</tw-passagedata><tw-passagedata pid="25" name="A Huge List of Nouns as Attributes" tags="" position="193,679" size="100,100">(set:$statoptions to (a:"coast", "car loan", "polka dot", "sticks", "stretch", "banjo", "goldfish", "form", "goose", "prose", "chickens", "latex", "face", "library", "circle", "guitar", "kittens", "worm", "kiss", "slope", "carrot people", "waste", "skull and crossbones", "cannon", "boat", "rings", "bad tempered nun", "laura", "shape", "antechamber", "furniture", "frame", "unit of unholy depth", "normal distribution", "window", "sphere of influence", "parcel", "tire iron", "double fault", "gentlefolk", "cabbage", "pen", "fourth power", "force", "ship’s company", "poop", "drink", "self-sacrifice", "lamb", "land", "coffee table", "cushion", "disk file", "driving", "reason", "sportswoman", "robin", "linoleum cutter", "lips", "icicle", "coffee pot", "property", "roll", "rail", "divergent thinking", "power", "vest", "limit", "alligator", "design", "branch", "chin", "roadblock", "suckling pig", "cornish hen", "drop", "jet ski", "codswallop", "hill", "ascending artery", "tract of arms", "wound", "maid", "atlantic sailfish", "spacesuit", "development", "refrigerator", "yarn", "desire", "sort", "short-haired idiot", "boot", "dolls", "bathing suit", "dick head", "desk", "word", "clouds", "pancake", "ice cream", "wren", "rainbows", "condition", "nonbeliever", "rest", "constant reminder", "character witness", "elegant cat’s ear", "square", "trickle trails", "home", "private area", "test paper", "value", "solar furnace", "mistress", "people", "powder", "rock", "town clerk", "bird", "mulled cider", "geese", "selection", "hitman", "bird brain", "cry", "lynch law", "sugar", "hammer", "wrench", "crown", "pain", "note", "conditional reaction", "ship’s company", "floor", "swing"))
(if:(random:1,2) is 1) [(set:$statoptions to (a:"bell", "picture", "eggnog", "work", "brainchild", "sealion", "internal control", "self-taught art", "zebra", "salt", "sponge", "blink of an eye", "election", "pie", "bells", "tissue typing", "squirrel", "smut", "exorcism", "salad", "control account", "trade", "keepsake machete", "wood garlic", "fairies", "fold", "cup", "bulb", "name", "fight", "wool", "clothesline", "revenue tariff", "leather", "route", "mailbox", "jungle warfare", "jam", "neck", "grip", "coat", "sneeze", "volcano", "comptroller general", "grinning guardsman", "cloud", "statue", "silver", "landscape painting", "step", "hydrofoil", "salamander", "owner", "discovery", "towelette", "wall", "scissors", "beefsteak", "eye disease", "dicky", "cork", "comb", "lecher", "mouth", "natural childbirth", "sneakers", "cent", "train", "oil well", "painting", "father", "table", "locket", "gas fitter", "shock", "nail", "wet suit", "effect", "ladybug", "cactus", "door", "dingleberry", "working papers", "structure", "critique", "junker", "battle of bull run", "turkey", "merry bells", "messiness", "circus", "day", "wine", "bat", "cottage pie", "teeth", "tramp", "railroad worm", "bird dog", "dry wall", "leaf-nosed snake", "celery", "baloney", "carnival", "sinus delay", "bruges", "city boy", "cream", "patrolman", "crook", "hoe", "sky burial", "spiral cake", "toast mistress", "priory", "feet", "beginner", "vegetable", "whole blood", "sea", "whistle", "minister", "scarf", "tailspin", "poison gas", "engine", "skate", "sutural bone", "police squad", "gorilla", "elbow", "price", "caption", "list", "hook", "low", "pervasiveness", "ticket", "sundress", "aspirin powder", "rouge grandma", "pudding stone protector", "show", "nudist camp owner", "support", "legal document", "european brown bat", "tub", "test copy", "paste", "fire", "pump", "northern snakehead", "needle", "frozen food", "honey", "gun", "texture", "fly", "tomatoes", "snake fern", "the defection stock", "business", "knot", "sentry box", "poison", "dinnertime", "time and a half", "snow", "respect", "money", "hydrant", "beds", "creator", "shoes", "grape jelly", "moon", "rice", "operation", "orange", "ship", "law", "self incrimination", "country", "error", "yellowstone river", "underwear", "contradictoriness", "sun", "plastic", "cracker", "nerve", "laser beams", "hearing", "cable", "firehouse", "captain fantastic", "expansion", "judge", "touch", "memory", "kola nut tree", "indigestion", "kazoo", "scallop", "licensed rat breeder", "farmer", "theory", "ducks", "army", "toy", "loaf", "spade", "calculator", "growth", "girl", "fistful", "shirt", "impulse", "soft mouth police", "greater green mamba", "drum", "mother figure", "play therapy", "baseball", "yam", "side", "balance", "expert", "veil", "summer", "liquid oxygen", "promotion system", "sea cucumber", "tree", "help", "church", "wellbeing", "interest", "presidency", "hotdog", "lift", "oven", "box", "rod", "taste", "garden", "ball", "balloon", "conjugal visitation", "rhythm", "bloodstained carpet", "telephone", "loss", "person", "war", "pizzas", "love", "pickle", "dad", "marching band", "lace", "cardiologist", "island", "territory", "smell", "twig", "governing body", "wrinkle", "whip", "hovercraft", "spoon", "meeting", "motion", "sneaky snake", "rake", "toad", "education", "surprise", "dissension", "tray", "hands", "dog sled", "bareboat", "frogs", "letters", "description", "fear", "mental disorder", "thunder", "patrol", "basketball", "skinny", "six day war", "battle", "nervelessness", "wrist", "book", "move", "cemetery", "metal", "owl", "flower", "spy", "clocks", "remnants of chaos", "bathrobe", "paint", "wing", "mother", "rowboat", "check mark", "basket", "negative moon", "burying ground", "toothpaste", "leg", "journey", "elastic band", "lawyer", "generalized seizure", "toe", "fireman", "ocean", "sister", "wire", "nest", "chemical plant", "snake", "way", "travel guidebook", "suspenders", "hood", "club", "purpose", "haircut", "cake", "star", "believer", "van", "sweatshirt", "eye", "bears", "cat", "revivalist", "perennial ragweed", "scum bag", "boundary", "ninja", "suit of armor", "trail", "copy", "ghost", "room", "mitten", "plot", "fan", "sewing-machine operator", "paper", "stocking", "cows", "diplomatic negotiations", "popcorn", "skirt", "blade", "rate", "smash", "riddle", "car", "burst", "eskimo dog", "head", "mice", "hippopotamus", "place", "logroller", "command prompt", "harmony", "comparison", "map", "fish", "monkey", "cap", "frump", "receipt", "praying mantis", "dime", "bipolar cupcake", "shotgun", "throne", "leaf", "calendar", "temper", "finger", "baby", "face card", "camp", "general knowledge", "curve", "print", "cultivated strawberry", "chief constable", "game", "pot", "meat", "punishment", "cloth", "rifle", "tank", "sisters", "steam", "glitter", "water", "visitor", "can", "laundry", "mountain", "microwave radar", "good-bye", "clan member", "anaconda", "tooth", "organization", "plate", "tense system", "beast", "seashore", "partner", "miner’s lettuce", "tongue", "hair", "lasagna", "kitten", "shade", "cars", "quantum leap", "pizza", "sombrero", "treatment", "tissue paper", "corn cake", "overlord", "yoke", "toejam", "willow", "passenger", "beetle", "house", "bee", "plantation", "boiling water", "thrill", "voyage", "opera singer", "crowd", "belly dance", "preventive strike", "seat", "constructor", "six-gilled shark", "sink", "committee", "credit", "competition", "plantlet", "sinus", "dentist’s drill", "fur ball", "space emulator", "spring", "eternal life", "thought", "glue", "opinion", "minute", "carriage", "insect", "digestion", "sweater", "knight’s service", "marble", "sail", "shop", "jewel", "clock", "current", "stockings", "oranges", "parent", "truck", "authority", "candy kiss", "smile", "locomotive", "hen", "time limit", "festival of lights", "air", "obsessive-compulsive disorder", "hospital", "feast", "bread", "pocket flask", "disease", "cord", "facility", "event", "bushes", "notepad", "egg", "artillery range", "sheet", "line", "wheel", "african yellowwood", "brain", "sock", "false schoolyard", "bone", "badge", "joke", "chemical science", "town planning", "pippin", "run", "musical chairs", "sand", "upper limit", "cherries", "jelly", "title", "bite", "upholsterer", "presbyterian church", "industrial park", "bun", "history", "pencil", "saddle horse", "mermaid egg", "cherry", "girls", "sea cow", "rabbits", "legs", "pet", "toothbrush", "market", "flock", "horse", "flying fish", "direction", "print", "department of justice", "back", "camera", "light", "sea barnacle", "potato", "pest", "burglar alarm", "letter", "cakes", "man", "trumpet section", "internal respiration", "angelfish", "twinkling uncleanness", "bead", "strawberry daiquiri", "pole dancer", "thing", "weather", "radio beam", "system", "knowledge", "sound", "rub", "decision", "breakfast", "eggs", "pigs", "reg ret", "sign", "scale", "twisting parsnip", "crowd pleaser", "cover", "music", "beanie", "orbital plane", "storage battery", "lumber", "coal", "self-renewal", "color", "sheep", "extremity", "rainbow flag", "pin", "use", "aggression", "criminal", "mist", "ground", "sheep dip", "children", "totem", "tractor", "flavor", "cattle", "governor", "doll", "motor-truck", "stock car", "rough-skinned newt", "drug", "door", "audition", "request", "sleep", "hubcap", "flesh", "blow", "lined snake", "end", "upset stomach", "month", "shorthair", "night", "pillow", "frog", "pies", "striped hyena", "grass", "olfactory bulb", "false partnership", "planetary house", "muscle", "sex shadowgraph", "skin", "lunch", "jeans", "kitty", "industry", "play", "class fellow", "bare bottom", "hat", "fang", "kettle", "park", "skull", "bed", "bubble", "match", "copper", "breakfast table", "pilot chart", "fairy lantern", "ice", "dare", "manure", "speaker", "curtain", "notions counter", "transport", "river", "test", "wiener", "physics lab", "shorts", "brush", "soup", "fiction", "scarecrow", "old church slavonic", "hygienic", "carpenter", "quilt", "hour", "ink", "cobweb", "turn", "rule", "antelope", "shelf", "knife", "plane", "cast", "front", "mom", "amusement", "mathematics department", "kangaroo’s-foot", "glove", "electric furnace", "pollution"))]
(if:(random:1,3) is 1)[(set:$statoptions to (a:"sunglasses", "hero", "birth", "north", "hyena", "sea anemone", "secretary", "larch", "false schoolyard", "grandfather", "arm candy", "edge", "optical crown glass", "lighthouse", "sledding people", "tendency", "trampoline", "milk", "soap", "birthday cake", "volleyball", "regional atomic mass", "pipefitting", "substance", "butter", "depersonalization disorder", "drawer", "order", "lecherous fern", "cats", "guide", "behavior", "flyleaf", "hot seat", "crayon", "unemployed people", "trick", "kangaroo’s-foot", "laugh", "prickly-seeded spinach", "waves", "button", "sailfish", "stitch", "consumer", "zinc", "wealth", "story", "insurance", "canvas", "mint", "trucks", "unit", "locker room", "chess", "boy", "talk", "rainstorm", "downtown", "profit", "hydrogen", "rose", "trains", "holiday", "lamp", "grain", "view", "voice", "barrel", "health", "scientific method", "sweatsuit", "crow", "painted tortoise", "morning", "position", "farm", "shoe", "top", "porter", "throat", "cook", "tiger", "claw", "rate of exchange", "rocket sack", "middle", "gate", "fairies", "time", "backhoe", "stem", "bus", "bread", "natural history", "game-board", "servant", "coach", "stew", "lemon lily", "police", "bell glass", "pets", "stole", "flame fish", "political party", "roof", "stranger", "woman", "multi-billionaire", "manager", "meal", "connection", "third baseman", "dust", "scorpion", "clam", "tract of arms", "friction", "collar", "stamp", "snails", "creature", "hub", "swim", "hunting ground", "rain", "level", "plot", "ornament", "mad-dog skullcap", "scene", "shivering pink toenails", "indirect expression", "lake", "swat", "escapee", "stetson hat", "dog", "lock", "suitcase", "heat", "tentacle", "earth", "representative", "carousel", "grandmother", "plant", "thumb", "banana", "administrative hearing", "twist", "chairs", "the ways of the world", "landmine", "beggar", "cough", "invention", "jailbreak", "station", "jump", "cupcake", "bunny", "jelly", "juice", "mark", "reaction", "cat flea", "chicken stew", "moral philosophy", "scottish terrier", "company", "mediation", "caution sign", "onionskin", "oil", "chemist", "generality", "positive feedback", "root", "trip"))]</tw-passagedata><tw-passagedata pid="26" name="A Huge List of Adjectives as Attributes" tags="" position="188,794" size="100,100">(set:$statoptions to (a:"strange", "terrible", "chainlike", "convivial", "fan-leafed", "affordable", "popular", "fabulous", "irritating", "shiny", "comforted", "wonderful", "skillful", "average", "exceptionable", "arrogant", "lazy", "biting", "wasteful", "respectful", "gorgeous", "vicious", "ferocious", "good-for-nothing", "loving", "cheery", "orange", "illogical", "stoic", "vast", "cloven-hoofed", "course", "childlike", "splendid", "hushed", "soulful", "persnickety", "soft", "all-devouring", "black", "well-behaved", "comfortless", "great", "furry", "crease-resistant", "reclusive", "artificial", "persistent", "slight", "closed in", "crushing", "scary", "certifiable", "lithe", "hard", "content", "faint", "pretend", "poor", "famous", "impressionable", "fervent", "small", "creative", "vivid", "hope", "helpful", "bloody", "heated up", "joyous", "painstaking", "fragile", "quickest", "self-assured", "sensitive", "slippery", "unassuming", "emotional", "passive", "center", "swift", "volcanic", "reliable", "squeamish", "elated", "resonant", "scrawny", "deviant", "striped", "diplomatic", "sneaky", "misty", "believing", "easy", "breeze", "fanlike", "hilarious", "fainthearted", "good", "slimy", "borderline", "odd", "snobby", "even-tempered", "snazzy", "disguised", "moronic", "meticulous", "central american", "rotten", "blindfolded", "orderly", "credulous", "unpopular", "many", "misbehaving", "gleaming", "maternal", "divine", "all-night", "cheering", "narrow", "fresh", "awesome", "glued", "industrious", "moonlit", "calm", "chivalrous", "composed", "twisted", "sincere", "distinct", "muddy", "cheerful", "likeable", "efficient", "thoughtless", "jolly", "short", "optimistic", "frank", "haunted", "drugged", "unthinking", "horrible", "impressive", "late", "excellent", "difficult", "hesitant", "quick", "barbaric", "ordinary", "chintzy", "glutinous", "bungling", "restless", "stupid", "motivated", "silly", "demoralized", "healing", "mighty", "head-on", "curly", "artistic", "ugliest", "immodest", "dangerous", "hysterical", "shrill", "broad-minded", "annoyed", "coal-fired", "morose", "brokenhearted", "resourceful", "boiling", "shallow", "honorable", "distant", "condescending", "deadpan", "angry", "brainy", "evil", "free", "green", "bitter", "fluffy", "vigilant", "husky", "disturbed", "inspiring", "prudent", "outrageous", "dowdy", "gregarious", "spine-chilling", "steady", "hawaiian", "sympathetic", "distrustful", "incisive", "blessed", "unsure", "sophisticated", "instinctive", "bean-shaped", "half-dozen", "ratty", "grouchy", "coincidental", "well-respected", "itchy", "keen", "dark", "hypercritical", "lively", "exclusive", "chilly", "dry", "icy", "high", "clenched", "annoying", "independent", "pokey", "super", "dramatic", "heavy", "logical", "above average", "shaggy", "irresistible", "high-priced", "testy", "genuine", "eager", "sullen", "fair-minded", "stable", "attracted", "patient", "tricky", "involved", "ghostly", "wary", "healthy", "experienced", "pensive", "squealing", "cool", "flashy", "kooky", "dated", "different", "uninterested", "cheesy", "moody", "greasy", "smelly", "bare-ass", "homely", "stormy", "disappointed", "disagreeable", "bad", "engrossed", "witty", "caustic", "timid", "flowing", "clever", "proud", "knowledgeable", "doubtful", "productive", "early", "eye-deceiving", "appreciative", "hearty", "grubby", "grade-appropriate", "polite", "dainty", "endurable", "empowering", "stern", "grave", "cautious", "inquisitive", "shrewd", "bored", "disruptive", "weak", "idiotic", "low", "unreliable", "unguarded", "deaf-and-dumb", "assertive", "boisterous", "hardheaded", "unbalanced", "cooperative", "agreeable", "steep", "shocking", "persevering", "quick-tempered", "elderly", "rough", "hungry", "repulsive", "kind", "striking", "ostentatious", "dark-gray", "expectant", "grotesque", "monster", "reserved", "extreme", "modest", "leery", "placid", "ashamed", "spoopy", "sentimental", "ridiculous", "incompetent", "chicken", "happy-go-lucky", "weary", "mushy", "dusty", "quick-witted", "enterprising", "insensitive", "spontaneous", "steadfast", "mammoth", "faithful", "sensible", "plain", "sexy", "devoted", "discerning", "fanciful", "raspy", "combustive", "communicative", "receptive", "lethargic", "young", "brief", "vigorous", "exuberant", "enlightened", "expedient", "hot-headed", "big", "damn", "petulant", "screeching", "cool-headed", "righteous", "spinning", "prickly", "beneficent", "nervous", "all-round", "straightforward", "broad", "intuitive", "geometrical", "loyal", "revolting", "magic", "credal", "miniature", "combinable", "unpleasant", "affectionate", "smokey", "enchanting", "glinting", "uptight", "slothful", "unfriendly", "capable", "successful", "petite", "controlling", "outspoken", "deafening", "gory", "tender", "triple", "shy", "demonic", "fine", "stained", "upset", "grim", "apprehensive", "plucky", "chaotic", "local", "made-up", "seemly", "plain-speaking", "numerous", "stale", "colossal", "tight", "ancient", "defeated", "high-level", "cordial", "juicy", "rainy", "cobwebby", "boney", "sociable", "excitable", "vulnerable", "hallucinating", "snooping", "spotless", "succinct", "big-shouldered", "protective", "empowered", "brilliant", "nosy", "ugly", "conceited", "bloodcurdling", "understanding", "unimaginative", "harmless", "burned-out", "crucial", "gracious", "heartbroken", "resigned", "condemned", "dead on target", "hot", "joyful", "dependent", "blushing", "poised", "sparkling", "unstable", "superficial", "wandering", "wild", "thankful", "level-headed", "indolent", "purring", "resolute", "stinky", "adorable", "practical", "alarming", "thundering", "easy-going", "lovable", "insane", "attractive", "breakable", "hollow", "chic", "damaged", "high-powered", "conscientious", "honest-to-goodness", "well-turned-out", "bullying", "worried", "neat", "drooling", "whispering", "daredevil", "provocative", "dextrous", "reflective", "barbecued", "serene", "best-known", "gigantic", "tough", "indefatigable", "frightened", "alluring", "sulky", "ghoulish", "suspicious", "naked", "mild", "saucy", "cranky", "respected", "serious", "plastic", "grieving", "pioneering", "crafty", "bewildered", "bell-bottom", "boundless", "bare-assed", "below average", "best-selling", "sassy"))</tw-passagedata><tw-passagedata pid="27" name="A Huge List of Verbs as Attributes" tags="" position="191,898" size="100,100">{(set:$temp to (random:1,4))
(if:$temp is 1)[(set:$statoptions to (a:"accelerate", "accept", "accomplish", "achieve", "acquire", "acted", "activate", "adapt", "add", "address", "administer", "admire", "admit", "adopt", "advise", "afford", "agree", "alert", "alight", "allow", "altered", "amuse", "analyze", "announce", "annoy", "answer", "anticipate", "apologize", "appear", "applaud", "applied", "appoint", "appraise", "appreciate", "approve", "arbitrate", "argue", "arise", "arrange", "arrest", "arrive", "ascertain", "ask", "assemble", "assess", "assist", "assure", "attach", "attack", "attain", "attempt", "attend", "attract", "audited", "avoid", "awake", "back", "bake", "balance", "ban", "bang", "bare", "bat", "bathe", "battle", "be", "beam", "bear", "beat", "become", "beg", "begin", "behave", "behold", "belong", "bend", "beset", "bet", "bid", "bind", "bite", "bleach", "bleed", "bless", "blind", "blink", "blot", "blow", "blush", "boast", "boil", "bolt", "bomb", "book", "bore", "borrow", "bounce", "bow", "box", "brake", "branch", "break", "breathe", "breed", "brief", "bring", "broadcast", "bruise", "brush", "bubble", "budget", "build", "bump", "burn", "burst", "bury", "bust", "buy", "buze", "calculate", "call", "camp", "care", "carry", "carve", "cast", "catalog", "catch", "cause", "challenge", "change", "charge", "chart", "chase", "cheat", "check", "cheer", "chew", "choke", "choose", "chop", "claim", "clap", "clarify", "classify", "clean", "clear", "cling", "clip", "close", "clothe", "coach", "coil", "collect", "color", "comb", "come", "command", "communicate", "compare", "compete", "compile", "complain", "complete", "compose", "compute", "conceive", "concentrate", "conceptualize", "concern", "conclude", "conduct", "confess", "confront", "confuse", "connect", "conserve", "consider", "consist", "consolidate", "construct", "consult", "contain", "continue", "contract", "control", "convert", "coordinate", "copy", "correct", "correlate", "cost", "cough", "counsel", "count", "cover", "crack", "crash", "crawl", "create", "creep", "critique", "cross", "crush", "cry", "cure", "curl", "curve", "cut", "cycle", "dam", "damage", "dance", "dare", "deal", "decay", "deceive", "decide", "decorate", "define", "delay", "delegate", "delight", "deliver", "demonstrate", "depend", "describe", "desert", "deserve", "design", "destroy", "detail", "detect", "determine", "develop", "devise", "diagnose", "dig", "direct", "disagree", "disappear", "disapprove", "disarm", "discover", "dislike", "dispense", "display", "disprove", "dissect", "distribute", "dive", "divert", "divide", "do", "double", "doubt", "draft", "drag", "drain", "dramatize", "draw", "dream", "dress"))]
(if:$temp is 2)[(set:$statoptions to (a:"anticipate", "confuse", "calculate", "damage", "deceive", "delight", "drink", "drip", "drive", "drop", "drown", "drum", "dry", "dust", "dwell", "earn", "eat", "edit", "educate", "eliminate", "embarrass", "employ", "empty", "enact", "encourage", "end", "endure", "enforce", "engineer", "enhance", "enjoy", "enlist", "ensure", "enter", "entertain", "escape", "establish", "estimate", "evaluate", "examine", "exceed", "excite", "excuse", "execute", "exercise", "exhibit", "exist", "expand", "expect", "expedite", "experiment", "explain", "explode", "express", "extend", "extract", "face", "facilitate", "fade", "fail", "fancy", "fasten", "fax", "fear", "feed", "feel", "fence", "fetch", "fight", "file", "fill", "film", "finalize", "finance", "find", "fire", "fit", "fix", "flap", "flash", "flee", "fling", "float", "flood", "flow", "flower", "fly", "fold", "follow", "fool", "forbid", "force", "forecast", "forego", "foresee", "foretell", "forget", "forgive", "form", "formulate", "forsake", "frame", "freeze", "frighten", "fry", "gather", "gaze", "generate", "get", "give", "glow", "glue", "go", "govern", "grab", "graduate", "grate", "grease", "greet", "grin", "grind", "grip", "groan", "grow", "guarantee", "guard", "guess", "guide", "hammer", "hand", "handle", "handwrite", "hang", "happen", "harass", "harm", "hate", "haunt", "head", "heal", "heap", "hear", "heat", "help", "hide", "hit", "hold", "hook", "hop", "hope", "hover", "hug", "hum", "hunt", "hurry", "hurt", "hypothesize", "identify", "ignore", "illustrate", "imagine", "implement", "impress", "improve", "improvise", "include", "increase", "induce", "influence", "inform", "initiate", "inject", "injure", "inlay", "innovate", "input", "inspect", "inspire", "install", "institute", "instruct", "insure", "integrate", "intend", "intensify", "interest", "interfere", "interlay", "interpret", "interrupt", "interview", "introduce", "invent", "inventory", "investigate", "invite", "irritate", "itch", "jail", "jam", "jog", "join", "joke", "judge", "juggle", "jump", "justify", "keep", "kept", "kick", "kill", "kiss", "kneel", "knit", "knock", "knot", "know", "label", "land", "last", "laugh", "launch", "lay", "lead", "lean", "leap", "learn", "leave", "lecture", "led", "lend", "let", "level", "license", "lick", "lie", "lifted", "light", "lighten", "like", "list", "listen", "live", "load", "locate", "lock", "log", "long", "look", "lose", "love", "maintain", "make", "man", "manage", "manipulate", "manufacture", "map", "march", "mark", "market", "marry", "match"))]
(if:$temp is 3) [(set: $statoptions to (a:"bless", "curse", "heal", "listen", "befriend", "forgive", "confront", "complicate", "investigate", "leap", "evade", "sneak", "sniff", "disguise", "refuse", "reveal", "synthesise", "translate", "bridge", "bend", "brag", "charm", "influence", "bewitch", "free", "plumb", "suss", "con", "intimidate", "recruit", "enlist", "provoke", "protect", "calm", "help", "save", "inspire", "love", "recognise", "acknowledge", "salute", "transfer", "measure", "audit", "risk", "interview", "formulate", "frighten", "inspire", "matter", "mean", "measure", "meddle", "mediate", "meet", "melt", "melt", "memorize", "mend", "mentor", "milk", "mine", "mislead", "miss", "misspell", "mistake", "misunderstand", "mix", "moan", "model", "modify", "monitor", "moor", "motivate", "mourn", "move", "mow", "muddle", "mug", "multiply", "murder", "nail", "name", "navigate", "need", "negotiate", "nest", "nod", "nominate", "normalize", "note", "notice", "number", "obey", "object", "observe", "obtain", "occur", "offend", "offer", "officiate", "open", "operate", "order", "organize", "oriented", "originate", "overcome", "overdo", "overdraw", "overflow", "overhear", "overtake", "overthrow", "owe", "own", "pack", "paddle", "paint", "park", "network", "aid", "steer", "swim", "troubleshoot", "rearrange", "reconfigure", "combine", "hack", "rewire", "recycle", "repurpose", "rewrite", "oblige"))]
(if:$temp is 4)[(set: $statoptions to (a:"part", "participate", "pass", "paste", "pat", "pause", "pay", "peck", "pedal", "peel", "peep", "perceive", "perfect", "perform", "permit", "persuade", "phone", "photograph", "pick", "pilot", "pinch", "pine", "pinpoint", "pioneer", "place", "plan", "plant", "play", "plead", "please", "plug", "point", "poke", "polish", "pop", "possess", "post", "pour", "practice", "praised", "pray", "preach", "precede", "predict", "prefer", "prepare", "prescribe", "present", "preserve", "preset", "preside", "press", "pretend", "prevent", "prick", "print", "process", "procure", "produce", "profess", "program", "progress", "project", "promise", "promote", "proofread", "propose", "protect", "prove", "provide", "publicize", "pull", "pump", "punch", "puncture", "punish", "purchase", "push", "put", "qualify", "question", "queue", "quit", "race", "radiate", "rain", "raise", "rank", "rate", "reach", "read", "realign", "realize", "reason", "receive", "recognize", "recommend", "reconcile", "record", "recruit", "reduce", "refer", "reflect", "refuse", "regret", "regulate", "rehabilitate", "reign", "reinforce", "reject", "rejoice", "relate", "relax", "release", "rely", "remain", "remember", "remind", "remove", "render", "reorganize", "repair", "repeat", "replace", "reply", "report", "represent", "reproduce", "request", "rescue", "research", "resolve", "respond", "restored", "restructure", "retire", "retrieve", "return", "review", "revise", "rhyme", "rid", "ride", "ring", "rinse", "rise", "risk", "rob", "rock", "roll", "rot", "rub", "ruin", "rule", "run", "rush", "sack", "sail", "satisfy", "save", "saw", "say", "scare", "scatter", "schedule", "scold", "scorch", "scrape", "scratch", "scream", "screw", "scribble", "scrub", "seal", "search", "secure", "see", "seek", "select", "sell", "send", "sense", "separate", "serve", "service", "set", "settle", "sew", "shade", "shake", "shape", "share", "shave", "shear", "shed", "shelter", "shine", "shiver", "shock", "shoe", "shoot", "shop", "show", "shrink", "shrug", "shut", "sigh", "sign", "signal", "simplify", "sin", "sing", "sink", "sip", "sit", "sketch", "ski", "skip", "slap", "slay", "sleep", "slide", "sling", "slink", "slip", "slit", "slow", "smash", "smell", "smile", "smite", "smoke", "snatch", "sneak", "sneeze", "sniff", "snore", "snow", "soak", "solve", "soothe", "soothsay", "sort", "sound", "sow", "spare", "spark", "sparkle", "speak", "specify", "speed", "spell", "spend", "spill", "spin", "spit", "split", "spoil", "spot", "spray", "spread", "spring", "sprout", "squash", "squeak", "squeal", "squeeze", "stain", "stamp", "stand", "stare", "start", "stay", "steal", "steer", "step", "stick", "stimulate", "sting", "stink", "stir", "stitch", "stop", "store", "strap", "streamline", "strengthen", "stretch", "stride", "strike", "string", "strip", "strive", "stroke", "structure", "study", "stuff", "sublet", "subtract", "succeed", "suck", "suffer", "suggest", "suit", "summarize", "supervise", "supply", "support", "suppose", "surprise", "surround", "suspect", "suspend", "swear", "sweat", "sweep", "swell", "swim", "swing", "switch", "symbolize", "synthesize", "systemize", "tabulate", "take", "talk", "tame", "tap", "target", "taste", "teach", "tear", "tease", "telephone", "tell", "tempt", "terrify", "test", "thank", "thaw", "think", "thrive", "throw", "thrust", "tick", "tickle", "tie", "time", "tip", "tire", "touch", "tour", "tow", "trace", "trade", "train", "transcribe", "transfer", "transform", "translate", "transport", "trap", "travel", "tread", "treat", "tremble", "trick", "trip", "trot", "trouble", "troubleshoot", "trust", "try", "tug", "tumble", "turn", "tutor", "twist", "type", "undergo", "understand", "undertake", "undress", "unfasten", "unify", "unite", "unlock", "unpack", "untidy", "update", "upgrade", "uphold", "upset", "use", "utilize", "vanish", "verbalize", "verify", "vex", "visit", "wail", "wait", "wake", "walk", "wander", "want", "warm", "warn", "wash", "waste", "watch", "water", "wave", "wear", "weave", "wed", "weep", "weigh", "welcome", "wend", "wet", "whine", "whip", "whirl", "whisper", "whistle", "win", "wind", "wink", "wipe", "wish", "withdraw", "withhold", "withstand", "wobble", "wonder", "work", "worry", "wrap", "wreck", "wrestle", "wriggle", "wring", "write", "x-ray", "yawn", "yell", "zip", "zoom"))]}</tw-passagedata><tw-passagedata pid="28" name="A Small List of Character Traits as Attributes" tags="" position="191,1014" size="100,100">{(set:$statoptions to (a:"Generous", "Integrity", "Loyal", "Devoted", "Loving", "Kind", "Sincere", "Gullible", "Crafty", "Agreeable", "Amiable", "Self-control", "Peaceful", "Faithful", "Patient", "Determined", "Persistent", "Adventurous", "Fair", "Cooperation", "Tolerance", "Optismistic", "Spirituality", "Dishonest", "Disloyal", "Unkind", "Mean", "Rude", "Disrespectful", "Impatient", "Greedy", "Abrasive", "Pessimistic", "Cruel", "Unmerciful", "Nacissistic", "Obnoxious", "Malicious", "Petty", "Quarrelsome", "Caustic", "Selfish", "Unforgiving", "Dominant", "Confident", "Persuasive", "Ambitious", "Bossy", "Resourceful", "Decisive", "Charismatic", "Authoritarian", "Magnetic", "Compelling", "Fascinating", "Innocuous", "Enthusiastic", "Bold", "Proactive", "Playful", "Zany", "Active", "Wild", "Silly", "Affectionate", "Funny", "Rough", "Talkative", "Rowdy", "Smart", "Fidgety", "Shy", "Lively", "Impatient", "Stubborn", "Charming", "Witty", "Sentimental", "Dauntless", "Strong", "Courageous", "Reliable", "Fearless", "Daring", "Tough", "Brave", "Nostalgic", "Deceptive", "Cunning", "Traumatised", "Maniacal", "Controlling", "Uneasy", "Anxious", "Vengeful", "Restless", "Insightful", "Caring", "Embarrassing", "Embarrassed", "Guilty", "Ashamed", "Judgmental", "Visionary", "Wholesome", "Gentle", "Tender", "Proud", "Pointed", "Curious", "Comradely", "Resolute", "Resourceful", "Thoughtful", "Bighearted", "Truthful", "Pedantic"))}</tw-passagedata><tw-passagedata pid="29" name="Establish Attributes by Dice Rolls" tags="" position="1509,187" size="100,100">{(set:$totalMax to $maxStat*$statsNumber)
(set: $statsRoll to "(print:$minStat)d(print:$maxStat/$minStat)")
(set:_temp to 8)
(if:_temp<7)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber) times, and write each result next to an attribute of your choice.")]
(if:_temp is 7)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber) times. The first result is your (print:$stats's 1st) score, the second is your (print:$stats's 2nd) score, and so on.")]
(if:_temp is 8)[(set: $statsGen to "Roll (print:($minStat+1))d(print:$maxStat/$minStat) (print:$statsNumber) times, discarding the lowest die each time. Write each result next to an attribute of your choice.")]
(if:_temp is 9)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber+1) times, discarding the lowest result. Distribute these results across your (print:$statsNumber) attributes.")]
(if:_temp is 10)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber+2) times, discarding the two lowest results. Distribute these results across your attributes.")]
<--! Unusual and hybrid versions -->
(set:$bonusSpend to (round:($maxStat/7)*$statsNumber))
(if:$bonusSpend is 9)[(set: $bonusSpend to 10)]
(if:$bonusSpend>10)[(if:$bonusSpend % 10 is 9)[(set:$bonusSpend to it +1)]
(if:$bonusSpend % 10 is 1)[(set:$bonusSpend to it -1)]
(if:$bonusSpend % 10 is 8)[(set:$bonusSpend to it +2)]
(if:$bonusSpend % 10 is 4)[(set:$bonusSpend to it +1)]
(if:$bonusSpend % 10 is 4)[(set:$bonusSpend to it -2)]]
(if:_temp is 10)[(set: $statsGen to "By default, the score for every attribute is (print:(round:$maxStat/$statsNumber)-1). You may choose (print:(round:$statsNumber/3)+1) attribute(s) to increase by rolling 1d(print:(round:$maxStat/$minStat)). The max value for any attribute is (print:$maxStat).")]
(if:_temp is 11)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber) times. The first result is your (print:$stats's 1st) score, the second is your (print:$stats's 2nd) score, and so on. Once you have your scores, you may swap any <i>one</i> pair.")]
(if:_temp is 12)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber) times. The first result is your (print:$stats's 1st) score, the second is your (print:$stats's 2nd) score, and so on. Once you have your base scores, you may spend $bonusSpend points to increase your attribute scores.")]
(if:_temp is 13)[(set: $statsGen to "First roll (print:$statsRoll) (print:$statsNumber) times, and write each result next to an attribute of your choice. Once you have your base scores, you may distribute another $bonusSpend points to boost your attribute scores.")]
(if:_temp is 14)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber+1) times. Distribute $statsNumber of the results across your (print:$statsNumber) attributes. You can split the pips on your final (print:$statsRoll) roll to boost your attributes further, making sure you don't exceed the maximum of (print:$maxStat).")]
(if:_temp is 15)[(set: $statsGen to "Your (print:$stats's 1st) attribute is randomly generated. Roll (print:$statsRoll). The amount of points you have to spend on your other (print:$statsNumber-1) attribute(s) is equal to (print:(round:$totalMax/2)) minus your (print:$stats's 1st) score.")]
(if:_temp is 16)[(set: $statsGen to "Roll (print:$statsRoll) (print:$statsNumber) times. Distribute these results across your (print:$statsNumber) attributes.")]
(if:_temp is 16)[(if: $statsNumber>3)[(set: $statsGen to "Roll (print:$statsRoll) twice. Assign these to (print:$stats's 1st) and (print:$stats's 2nd) as you choose. You can then spend (print:(round:($maxStat/2)*($statsNumber-2)+1)) points across your remaining attributes.")]]
}</tw-passagedata><tw-passagedata pid="30" name="Establish Attributes by Points Spend" tags="" position="1514,311" size="100,100">{(set:_totalMax to $maxStat*$statsNumber)
(set: $statsRoll to "(print:$minStat)d(print:$maxStat/$minStat)")
<--! Points Spend -->
(set:$statsPoints to (round:_totalMax/2))
(if:(random:1,4) is 1)[(set:$statsPoints to (round:_totalMax/3))]
(if:(random:1,2) is 1)[(set:$statsPoints to it + (random:1,$maxStat))]
(if:$statsPoints % 10 is 9)[(set:$statsPoints to it +1)]
(if:$statsPoints % 10 is 1)[(set:$statsPoints to it -1)]
(if:$statsPoints % 10 is 8)[(set:$statsPoints to it +2)]
(if:$statsPoints % 10 is 4)[(set:$statsPoints to it +1)]
(set:$statsGen to "To create a character, distribute (print:$statsPoints) dice across these (print:$statsNumber) $attributes.")
(if:$conflictRes is "roll above target")[(set:$statsGen to "To create a character, distribute (print:$statsPoints) points across these (print:$statsNumber) $attributes.")]
(if:$conflictRes is "resource pool")[(set:$statsGen to "To create a character, distribute (print:$statsPoints) points across these (print:$statsNumber) $attributes.")]
(if:$overallApproach is 5)[
(set: $statsGen to it + " Save some points to buy proficiencies (see below).")
(set: $profCost to (round:$statsPoints/15))
(if:$profCost>3)[
(if:$profCost % 10 is 9)[(set:$profCost to it +1)]
(if:$profCost % 10 is 1)[(set:$profCost to it -1)]
(if:$profCost % 10 is 8)[(set:$profCost to it +2)]
(if:$profCost % 10 is 6)[(set:$profCost to it -1)]
(if:$profCost % 10 is 4)[(set:$profCost to it +1)]]
(if:$profCost < 2)[(set:$profCost to 2)]
(set: $nestedSkills to "Each proficiency costs $profCost points.")]
<--! Distribute Array -->
(set:$genArray to (a:))
}</tw-passagedata><tw-passagedata pid="31" name="Establish Attributes in a Ranked System" tags="" position="1512,422" size="100,100">{(set: $statsGen to "By default, every attribute is the lowest rank. It costs 10 points to increase an attribute by one rank, and you have (print:(($maxStat-1)*10*(round:($statsNumber/3)))) to spend.")
(if: $maxStat is $statsNumber)[(set: $statsGen to "To create a character, assign one attribute to each rank.")]}</tw-passagedata><tw-passagedata pid="32" name="Conflict Resolution Main Branch" tags="" position="1568,597" size="100,100">{(if:$conflictRes is "roll above target")[(display:"Roll Above Target Resolutions")]
(if:$conflictRes is "resource pool")[(display:"Resource Pool Resolutions")]
(if:$conflictRes is "d4 dice pool")[(display:"Dice Pool Resolutions")]
(if:$conflictRes is "d6 dice pool")[(display:"Dice Pool Resolutions")]
(if:$conflictRes is "d10 dice pool")[(display:"Dice Pool Resolutions")]
(if:$systemType > 40)[(display:"Ranked System Resolutions")]
}</tw-passagedata><tw-passagedata pid="33" name="Roll Above Target Resolutions" tags="" position="1688,546" size="100,100">{<--! Roll Above Target Number, or Roll Under Ability, etc. -->
(set:$resMechanic to "Roll $statsRoll. A roll less than or equal to the relevant stat is a success.")
(set:_temp to (random:1,7))
(if:$minStat>1)[
(if:(random:1,2) is 1)[
(if:$minstat>0)[
(set:$resMechanic to "The GM sets a difficulty between 1 and (print:$maxStat/$minStat). Roll (print:$minStat-1)d(print:$maxStat/$minStat) and add the difficulty. If it is less than your relevant stat, you succeed. If it is equal, you succeed at a cost.")]]]
(if:$maxStat<7)[
(if:_temp<4)[(set:$resMechanic to "Roll 2d6 and add the relevant attribute. On a result of 10+ the action succeeds perfectly. On a result of 7-9 the action partly succeeds. On a result of 6 or less there is big trouble, usually failure.")]
(if:_temp is 4)[(set:$resMechanic to "Roll dice to determine outcome. On a result of 10+ the action succeeds perfectly. On a result of 7-9 the action partly succeeds. On a result of 6 or less there is big trouble, usually failure. The dice you roll are determined by your attribute rank. 1. Unskilled: Roll 3d6 and keep the lowest 2d6. 2. Proficient: Roll 2d6. 3. Expert: Roll 3d6 and keep the highest 2d6. 4. Master: Roll 4d6 and keep the highest 2d6.")]
(if:_temp>4)[(set:$resMechanic to "Tasks are assigned a difficulty by the GM, usually between 5 (so easy) and 25 (so hard). Roll 1d20 and add your relevant attribute. If the result equals or exceeds the difficulty, you succeed. A roll of 1 fails no matter what. A roll of 20 succeeds to matter what.")]
]
(if:$maxStat>17)[
(set:$resMechanic to "Roll 1d20. A roll less than or equal to the relevant stat is a success. ")
(if:(random:1,2) is 1)[(set: $resMechanic to it+"The higher number, the better the success. So you want to roll high, but not too high. ")
(if:(random:1,2) is 1)[(set:$resMechanic to it+"A 20 always fails splendidly and a 1 always succeeds magnificently. ")]
(if:(random:1,3) is 1)[(set: $resMechanic to it + "If the nature of the task is predictable and without time pressure, you can choose to automatically 'roll' a 10. ")]]
(if:(random:1,2) is 1)[(set:$resMechanic to "Each attribute score gives you a <b>modifier</b>. You can calculate these by dividing your attribute by two (rounded down) and subtracting five. Write them next to your attributes. When you attempt an action, roll 1d20 and apply your modifier. Other buffs or debuffs may also apply. The GM will select the <b>target</b> (10 is easy, 20 hard). Equal or exceed the target to succeed. A natural 1 always fails and a natural 20 always succeeds.")]
]
(if: $maxStat is 24)[
(set:$resMechanic to "Roll under your attribute to succeed. If you equal it exactly, it's a partial success. Roll dice as directed by the GM, according to the predictability of the situation: 1d20 (what could go wrong), 6d4 (easy if you know how), 4d6 (working under pressure), 3d8 (a lot of unknowns), 2d12 (uncharted territory).")]
(if: $maxStat > 24)[
(set:$resMechanic to "Roll $statsRoll. A roll less than or equal to the relevant stat is a success.")
(if:$minStat>1)[(if:(random:1,2) is 1)[(set:$resMechanic to "The GM sets a difficulty between 1 and (print:$maxStat/$minStat). Roll (print:$minStat-1)d(print:$maxStat/$minStat) and add the difficulty. If it is less than or equal to your relevant stat, you succeed.")]]
]
}</tw-passagedata><tw-passagedata pid="34" name="Resource Pool Resolutions" tags="" position="1687,661" size="100,100">{(set:$resMechanic to "When you face a difficult task, the GM will give you some dice. These may be of any number and shape(s), according to the difficulty of the task. You may then spend points from one or more relevant resource pool(s). Whether you succeed or fail, your points will be lost all the same. Announce what you are spending, and roll the dice. If the total pips is less than or equal to what you have spent, you have passed the test. ")
(set:_temp to (random:1,5))
(if:_temp is 1)[(set:$resMechanic to "The GM will announce the difficulty rating of a task. Spend at least that number of points from the relevant resource pool to get a minimal success. Spend extra points to get better success. You can also spend under the difficulty rating to soften the consequences of failure. ")]
(if:_temp is 2)[(if:$maxStat<21)[(set:$resMechanic to "When you try something tricky, decide how many points you'll spend from your relevant attribute. Then roll 1d6 and add that to your spend. On a result of 10+ the action succeeds perfectly. On a result of 7-9 the action partly succeeds. On a result of 6 or less there is big trouble, usually failure. ")]]
(if:_temp is 3)[(set:$resMechanic to "1. Say what you are going to do, and what attribute you are going to use. There's no backing out now. 2. The GM will announce the cost of success as a number of dice. The size of the dice depends on the appropriateness of the attribute (d4s or d6s for highly relevant, d8s and d10s for somewhat relevant, d12s or d20s for hardly relevant). The number will depend on the difficulty of the task. 3. Roll the dice. You may now spend that number of points from your attribute to succeed, or keep your points and fail the action. 4. ")
(if:$overallApproach is 5)[(set:$nestedSkillsDescr to "5. " + it)]
]
(set:$resMechanic to it + (either:"Points are replenished through rest. ", "Points gradually replenish themselves over time. ", "Points are partly or fully replenished between play sessions, at the GM's discretion. ", "Points are replenished through rest, or can be regained by achieving story goals or spectacular roleplaying. "))
(if:(random:1,4) is 1) [(set:$resMechanic to it + (either:"You can triple the value of points that you spend permanently, i.e. reducing the maximum level of your pool. "))]
(if:(random:1,4) is 1) [(set:$resMechanic to it + (either:"You can achieve an automatic heroic success by burning a pool forever. It will never replenish. "))]
}</tw-passagedata><tw-passagedata pid="35" name="Dice Pool Resolutions" tags="" position="1681,778" size="100,100">{
(if: $conflictRes is "d4 dice pool")[(set: $poolSuccesses to "3 or 4")]
(if: $conflictRes is "d6 dice pool")[(set: $poolSuccesses to (either:"4, 5, or 6","the target difficulty (3-6)"))]
(if: $conflictRes is "d10 dice pool")[(set: $poolSuccesses to (either:"7 or above", "the target difficulty (5-10)"))]
(set:_temp to (random:1,5))
(set:$resMechanic to "When you try something non-trivial, roll the dice pool of the closest associated attribute. Sometimes the GM may remove or add dice to represent penalties or advantages. ")
(if:$maxStat<6)[(set:$resMechanic to "When you try something non-trivial, you will roll some dice. Usually you'll roll the dice pools of the two attributes most closely associated with whatever you're trying to do. ")]
(if:_temp is 1)[(set:$resMechanic to it + "Add up all the pips. If they are equal to or greater than the difficulty of the action, the action succeeds.")]
(if:_temp is 2)[(set:$resMechanic to it + "If no dice match, the action fails. If two or more dice match, the action succeeds. Choose one set of matching dice (e.g. all the 2s or all the 3s) and add them up to get the degree of success. The higher the total, the more impressive the success. The more dice in the set, the longer it took to succeed. ")]
(if:_temp is 3)[(set:$resMechanic to it + "Roll them one at a time, and stop whenever you like. As you roll, group them into the high rolls and the low rolls. If the high rolls outnumber the low rolls, you succeed. If the two groups of dice are equal, you succeed, but at a cost. The more dice in the high roll group, the bigger the success. ")]
(if:_temp > 3)[(set:$resMechanic to it + "Count the number of dice showing $poolSuccesses. Each die is a degree of success. ")]
(if:(random:1,3) is 3)[(set:$resMechanic to it + "Any die roll that is maximum is 'exploding.' If you want, you can add another die roll of the same kind to the result.")]
}</tw-passagedata><tw-passagedata pid="36" name="Ranked System Resolutions" tags="" position="1675,893" size="100,100">{(if: $systemType is 41)[(set:$resMechanic to "Actions are assigned difficulty ratings from 0 to 20. Roll your relevant die and add any buffs or debuffs. The more you exceed the difficulty rating by, the greater the success. If you equal it exactly, you succeed, but at a cost. ")
(if:(random:1,3) is 3)[(set:$resMechanic to it + "If you roll the maximum number on any die and beat the difficulty rating, you may choose instead to fail and learn from your failure. The die will then upgrade to the next type of die (d4 becomes d6, d6 becomes d8, etc.). ")
(if:(random:1,3) is 2)[(set:$resMechanic to it + "If you have a d20 attribute, you can choose to max out your effort. Roll twice, and keep the higher result, but downgrade the d20 to a d12. ")
]]]
(if: $systemType is 42)[(set:$resMechanic to "To succeed, draw a card from the deck that is lower than the face value of your relevant attribute card. The associations of the card may influence the form of the success or failure.")]
(if: $systemType is 43)[(set:$resMechanic to "Resolve actions through discussion and negotiation. Use a color wheel for reference. Challenges have colors too. The closer the match between an attribute color and a challenge color, the easier and/or the more magnificent the success. Attributes with similar colors tend to get entangled, so that when one comes into play, the other one does too.")]
(if: $systemType is 44)[(set:$resMechanic to "Tasks are also rated easy, average, a bit difficult, difficult, very difficult, or epic. You can reduce the difficulty of the task by collaboration or ingenuity.")]
(if: $systemType is 45)[(set:$resMechanic to "Tasks are also rated easy, average, hard, or epic. You can reduce the difficulty of the task by collaboration or ingenuity.")]
(if: $systemType is 46)[(set:$resMechanic to "Resolve actions through discussion and negotiation. You almost always succeed with your best attribute and almost always fail with your worst. But stories have many twists and turns, and sometimes failure is better than success. ")]
(if: $systemType is 47)[(set:$resMechanic to "To succeed, draw a card from the deck that is lower than the face value of your relevant attribute card. Depending on the context, the suit of the card can influence the manner of success or failure: hearts means emotion, diamonds means wealth, clubs means violence, and spades means technology or magic. ")]
(if: $systemType is 48)[(set:$resMechanic to "To succeed in an action, you must improve the object that represents it in some way, or put it to a novel use. Or if it is a creature, you must please them, help them, or teach them something. If the object or creature disappears from where it can be seen, your character's attribute is frozen and useless. You can claim successes from interactions with secret objects or creatures, but if so, near the end of the session everyone must reveal everything, and general consent can render those successes illusory, fleeting, or phyrric. The same object or creature may serve as the attributes of more than one character. ")]
(if: $systemType is 49)[(set:$resMechanic to "To succeed in an action, you must move the piece that represents that attribute. To succeed magnificently in an action, you must capture another piece with it. The GM (or someone else) will make a move after you make yours. ")
(if: (random:1,2) is 1)[(set:$resMechanic to it + "Unlike in ordinary Chess, if you or the GM captures the King, play can go on. But whoever has captured the other's King can declare at any point to return the whole board to a fresh start.")
(set: $nestedSkillsDescr to "If you are using one of your proficiencies, you have the option to take back a move (once only).")
]]
(if: $systemType is 50)[(set:$resMechanic to "The top-ranked character in any attribute will always win in any fair contest based on that attribute. The second-ranked character will win in almost any fair contest, and certainly will always win in any fair contest against any human being. The third-ranked character, if there is one, can always win in any fair contest against almost any human being. The fourth-ranked character, if there is one, can always win in any fair contest against an average human being. Among the players, all else being equal, the character with the higher rank in an attribute will always win a fair contest based on that attribute. ")]
}
</tw-passagedata><tw-passagedata pid="37" name="NOTES" tags="" position="776,553" size="100,100">http://www.darkshire.net/~jhkim/rpg/freerpgs/bykeyword/rules-lite.html
Permutationally generated dark fantasy stat names - creepy, OTT sorcerous magic
More permutational fantasy worlds, e.g. monsters, antagonists, names of important institutions or structures, rulers and governing institutions, reality exceptions and suspensions, novums
Maybe use of datamap to transfer setting more thoroughly into attributes, rules description, character classes. E.g. data map could contain 1-2 suggested classes, 1-2 suggested super powers, 1-2 suggested attributes, 1 imminent event?
Adding super powers
MAPPING to add as optional rule?
https://tarsostheorem.blogspot.com/2019/02/mapping-with-playing-cards-part-1-cities.html
A land filled with x and y, where x and y are e.g.
gas-powered steppe horses
bone castles
#D6EBD9
You are here to
We are here to... find an ancient artifact search for a cure rescue someone in distress use a sacred site bring a villain to justice find the chosen one recover our souls stop the release of an ancient evil seek forbidden knowledge close an unholy portal
an un-living lord. an alien horror. a fallen angel. an ancient dragon. a powerful sorcerer. a despotic warrior. a zealous priest. an infernal fiend. a criminal mastermind. the one that betrayed us. A
undead horrors crazed cultists twisted abominations ruthless assassins monstrous hordes foul demons deadly traps powerful constructs wild beasts skilled warriors</tw-passagedata><tw-passagedata pid="38" name="Hand Crafted System" tags="" position="1399,305" size="100,100">{
<--! Systems that overwrite all variables generated so far -->
(if: $systemType is 51)[
(set:$minStat to -4) (set:$maxStat to 5)
(set:$attributes to "attributes")
(set:$statsType to "Each attribute is between -4 and +5.")
(set:$statsGen to "Roll 1d10 for each attribute and subtract 5." )
(set: $resMechanic to "The GM will select a <b>target</b> for any risky task, usually between 5 and 25. Roll 1d20 and add your relevant attribute. Equal or succeed the target to complete the task. A natural 1 is a critical failure and a natural 20 is a critical success. ")
(set: $conflictRes to "roll above target")]
(if: $systemType is 52)[
(set:$minStat to 0) (set:$maxStat to 5)
(set:$attributes to "attributes")
(set:$statsType to "Your attributes measure what you have done, not how good you supposedly are at doing it.")
(set:$statsGen to "All of your attributes start at zero." )
(set: $resMechanic to "Set up a jenga tower. Every time you make a significant decision, as directed by the GM, you must remove a block. If you succeed, you can place a mark next to the attribute most closely matching your action. If you knock over the tower, all your marks are wiped away, and something catastrophic befalls you at the next plausible narrative opportunity. This could be death, or something else. A maximum of two player characters can escape the story alive. Also, no player character can escape the story unless they have at least two marks next to each attribute.")
(set: $conflictRes to "jenga horror survival")]
(if: $systemType is 53)[
(set:$minStat to 2) (set:$maxStat to 20)
(set:$attributes to "stats")
(set:$statsType to "Each stat has a value between 2 and 20. ")
(set:$statsGen to "Roll 2d10 $statsNumber times and distribute among your attributes as you wish." )
(set: $resMechanic to "To complete an action, roll a certain number of d10, add your relevant stat, and beat a target number. For a straightforward action, roll 1d10 and beat 10. For a hard action, roll 2d10 and beat 20. For a very hard action, roll 3d10 and beat 30. If you roll exactly equal to the target, you succeed, but at a cost. ")
(set: $conflictRes to "roll above target")]
(if: $systemType is 54)[
(set:$minStat to 1) (set:$maxStat to 6)
(set:$attributes to "dice pools")
(set:$statsType to "Each attribute is represented by a pool of six-sided dice.")
(set:$statsGen to "When you create your character, distribute (print:2*$statsNumber+1) dice across your attributes however you wish. " )
(set: $resMechanic to "Roll your dice pool to overcome an obstacle. Every 5 or 6 counts as a success. The GM can represent more difficult and complex obstacles by drawing a 'progress clock,' a circle divided into segments. The more complex, the more segments. Each success allows you to colour in one segment. Very complex obstacles can be represented by multiple clocks. ")
(set: $conflictRes to "progress clocks")]
(if: $systemType is 55)[
(set:$minStat to 4) (set:$maxStat to 24)
(set:$attributes to "stats")
(set:$statsType to "Each attribute has a starting value between 4 and 24, and an absolute maximum of 30. ")
(set:$statsGen to "Roll 4d6 $statsNumber times and distribute among your attributes as you wish." )
(set: $resMechanic to "To complete an action, roll two six-sided dice. If you roll a matching pair, you automatically fail, but you learn from the experience: add 1 to the relevant attribute, up to a maximum of 30. If you don't roll a pair, multiply the two dice. If the result is equal to or less than your attribute, you succeed. If it's greater, you fail and learn nothing from it.")
(set: $conflictRes to "roll above target")]
(if: $systemType is 56)[
(set:$minStat to 1) (set:$maxStat to 6)
(set:$attributes to "stats")
(set: $statsGen to "By default, every stat is d4. During character generation, it costs 10 points to step up a stat by one rank, and you have (print:(($maxStat-1)*10*(round:($statsNumber/3)))) to spend.")
(set: $nestedSkills to "You can also buy proficiencies from the same pool of character generation points. Each costs 5 points OR 1d10 points.")
(set:$statsType to "Each stat is associated with a kind of die, e.g. d4, d6, d8, d10, d12, d20.")
(set: $resMechanic to "The GM decides the target number to beat, between 2 and 20. To complete an action, roll the relevant die. You need to get equal to or higher than the target. The die is 'exploding,' meaning if you roll the maximum result, you can roll again and add it to your total. There is no theoretical upper limit to how high you can roll. ")
(if:(random:1,3) is 1)[(set: $resMechanic to it + "If you fail, you earn one point of karma as a consolation prize. You can spend karma points to increase your roll. ")]
(if:(random:1,3) is 1)[(set: $resMechanic to it + "If the nature of the task is predictable and without time pressure, instead of rolling your die you have the option of using half its maximum value.")]
(set: $conflictRes to "roll above target")]
(if: $systemType is 57)[
(set:$minStat to 1) (set:$maxStat to 1)
(set:$attributes to "pages")
(set:$isSuperHero to false)
(set:$overallApproach to 0)
(set: $statsGen to "For each stat, take a page from a book or a magazine, or print something from the internet.")
(set:$statsType to "Each stat is represented by a page torn from a magazine or book.")
(set: $resMechanic to "To complete an action successfully, you must cross one or more words from your page. The words, together with the stat name, must roughly describe or refer to what you are trying to do. The more accurately or elegantly they do so, the more magnificent your success. The more tenuously they do so, the more partial or costly your success. At the end of each play session, or at the GM's discretion, everybody gets fresh pages.")]
(if: $systemType is 58)[
(set:$minStat to 1) (set:$maxStat to 3)
(set:$attributes to "attributes")
(set: $statsGen to "You begin with 3 points in each attribute.")
(set:$statsType to "Spending points lets you act more freely.")
(set: $resMechanic to "At the start of the game, write down the title of a novel (or you can use films). Apart from trivial minor activities, your character can only do things that somebody in the book does. You also cannot borrow the same moment twice. You can cross out the novel and write a new one by spending a point of the relevant attribute. For example, if a task calls for (print:$stats's 1st), spend a point of (print:$stats's 1st) to 'jump' to a new novel where some character does the action you want to perform. You are now borrowing your action from that book until you spend another point. Points are restored at the GM's discretion, usually at the end of each session.")]
(if: $systemType is 59)[
(set:$minStat to 1) (set:$maxStat to 4)
(set:$attributes to "bonuses")
(set: $statsGen to "You may distribute $statsNumber points across these bonuses.")
(set:$statsType to "Each bonus goes from +0 to +4.")
(set: $resMechanic to "Roll 2d6. If you are attempting a recognised move, from the Big List of Basic Moves, or from your Character Class Moves, then add the relevant bonus. On a result of 10+ your move succeeds perfectly. On a result of 7-9 the move may succeed but you expose yourself to danger, retribution, or cost. On a result of 6 or less there is big trouble, and maybe you fail.")]
(if: $systemType is 60)[
(set:$minStat to 1) (set:$maxStat to 3)
(set:$attributes to "traits")
(set: $statsGen to "Each trait starts with a value of 1.")
(set:$statsType to "You begin with six dice in your personal pool.")
(set: $resMechanic to "Just by braving an obstacle, you acquire a die to add to your pool. You also gain one die for each point you have in a relevant trait. Once you have enlarged your pool, roll as many dice as you like from it, counting 4 or above as a success. Two successes beat a moderate obstacle, three a tricky one, four a fiendish one. Five accomplishes the seemingly impossible. ")
(if: (random:1,2) is 1)[(set:$resMechanic to it + "Keep the 1s and 2s, but remove from your pool all dice showing 3 or above. ")] (else:)[(set:$resMechanic to it + "If you win, discard the dice you rolled. If you lose, suffer the consequences, but at least you get to keep the dice. ")]
(if: (random:1,2) is 1)[(set:$resMechanic to it + "Increase the value of a relevant trait every time all the dice show the same number. ")]
]
(if: $systemType is 61)[
(set:$minStat to 1) (set:$maxStat to 6)
(set:$attributes to "skills")
(set: $statsGen to "Every skill starts at level 1.")
(set: $statsType to "Your skill level tells you how many dice to roll.")
(set: $resMechanic to "Roll as many d6s as your skill level. ")
(set: $nestedSkillsDescr to "Take +1 die if you have a relevant proficiency.")
(if: (random:1,3) is 1)[(set:$resMechanic to it + "If you roll equal to or higher than the target set by the GM, you succeed. ")] (else:) [(set:$resMechanic to it + "The GM will roll a number of d6s to oppose you. The highest total wins. ")]
(if: (random:1,3) is 1)[(set:$resMechanic to it + "Every time you roll all 1s, the relevant skill goes up a level. ")] (else:) [(set:$resMechanic to it + "Every time you roll all 1s, you gain a new skill, named after the task you were just attempting. ")]
(if: (random:1,2) is 1)[(set:$resMechanic to it + "Every time you fail a task you get 1 XP. You can spend 1 XP to turn any 6 into a 1 or any 1 into a 6.")]
]
(if: $systemType is 62)[
(set:$minStat to 0) (set:$maxStat to (random:5,10))
(set:$attributes to "pools")
(set: $statsGen to "To build a character, distribute (print:(round:($statsNumber*($maxStat/3)))) points across these $statsNumber pools.")
(set: $statsType to "You can spend points from these pools to boost your action rolls.")
(set: $resMechanic to "Any big task has a Difficulty between 2 (easy) and 8 (almost impossible). Roll 1d6 and add your pool spend. If you equal or beat the Difficulty, you succeed! ")
(set: $nestedSkillsDescr to "A relevant proficiency lowers the Difficulty by 1.")
(if:(random:1,2) is 1)[(set: $resMechanic to it + "You must say how many points you are spending *before* you roll. ")] (else:) [(set: $resMechanic to it + "You can roll first, then decide if you want to spend points. ")]
(set: $resMechanic to it + "
The more you beat the Difficulty by, the more magnificent the success. If you beat it by a lot, you may succeed in ways you weren't even intending, or perhaps never could have imagined.
")
(if:(random:1,2) is 1)[(set: $resMechanic to it + "Your pools replenish through rest, or between adventures. ")] (else:) [(set: $resMechanic to it + "Your pools replenish as you achieve story goals, and/or when you roleplay spectacularly, as determined by the GM. ")]
]
(if: $systemType is 63)[
(set:$minStat to 1) (set:$maxStat to 8)
(set:$attributes to "pools")
(set: $statsGen to "You may distribute (print:$statsNumber*3) points across these pools.")
(set:$statsType to "You can spend points from a pool to do hard stuff.")
(set: $resMechanic to "Every task has a difficulty rating from 0 to 8. The GM tells you the rating, and then you roll 1d8. If you roll higher than the difficulty rating, you succeed. If you roll lower than the difficulty rating, something went wrong. If you roll exactly the difficulty rating, you succeed AND something went wrong. You can also spend points from your relevant pool to increase your roll. ")
(set: $nestedSkillsDescr to "Having a relevant proficiency lowers the difficulty rating by 1.")
(if: (random:1,2) is 1)[(set:$resMechanic to it + "You can either spend them before you roll the die, or after you roll it -- but if you spend them afterwards, it costs twice as much! E.g. you would need to spend 4 points to add 2 to your roll.")]
]
(if: $systemType is 64)[
(set:$minStat to 1) (set:$maxStat to 8)
(set:$attributes to "traits")
(set: $statsGen to "To build your character, you may distribute (print:$statsNumber*3) points across these traits.")
(set:$statsType to "You will draw dominoes equal to the value of the relevant trait to overcome obstacles. ")
(set: $resMechanic to "When a player tries something tricky, the GM assigns it a ''challenge level'' from 2 to 10, and draws the ''challenge domino''. The player draws dominoes equal to their trait number and attempts to build a ''chain'' starting at the challenge domino. If the chain equals or exceeds the challenge level (including the challenge domino), the player succeeds. Players may collaborate on a challenge to pool their domino draws. ")
(set: $nestedSkillsDescr to "If you possess a relevant proficiency, draw one extra domino.")
(if:(random:1,2) is 2)[(set: $resMechanic to it + "If players collaborate on a challenge, the character with the highest trait draws all their dominoes as usual, and each assisting player draws one domino. ")]
(else:)[(set: $resMechanic to it + "Players may collaborate on a challenge to pool their domino draws. For complex teamwork tasks, the GM may use two or more challenge dominoes simultaneously to represent different aspects of the task. ")]
]
(if: $systemType is 65)[
(set:$minStat to 1) (set:$maxStat to 3)
(set:$attributes to "skills")
(set: $statsGen to "Choose which skills you're good at, which you're bad at, and which you're okay at. Then invent as many more skills as you like which you are either good at or bad at. Altogether you must be good at at least $statsNumber things, and bad at more things than you are good at. ")
(set:$statsType to "You use these in skill checks. You'll just need ordinary six-sided dice. ")
(set: $resMechanic to "When you try something risky, roll a die. If you're good at that thing, you succeed on a 3, 4, 5 or 6. If you're okay, succeed on a 4, 5 or 6. If you're bad, succeed on a 5 or 6. ")
(if:(random:1,2) is 2))[(set: $resMechanic to it + "If someone is helping you, or you have had time to practise and prepare, the GM may give you advantage. Roll 2d6 instead of 1d6 and keep the best result. ")]
]
(if: $systemType is 66)[
(set:$minStat to 0) (set:$maxStat to 3)
(set:$attributes to "skills")
(set: $statsGen to "Distribute (print:$statsNumber*2) points among your $attributes. ")
(set:$statsType to "Each skill is between $minStat and $maxStat. ")
(set: $resMechanic to "Whenever you attempt something risky, roll 2d10 (the <i>challenge dice</i>) and 1d6 (the <i>action die</i>). Add up to one relevant skill to your action die, plus any relevant buffs or advantages, to get your <i>action total</i>.
If your action roll is greater than both challenge dice, you succeed. If you beat only one die, it's a partial success")
(if:(random:1,2) is 1)[(set: $resMechanic to it + ". ")](else:)[
(set: $resMechanic to it + " (take -1 momentum, and narrate a complication).
''Momentum''
<i>Momentum</i> ranges from -6 to +12. It's a measure of how things are going for you. When you gain an advantage, acquire an insight, or reach a story milestone, take +1 or +2 momentum. When you mess up or suffer a setback, take -1 or -2 momentum.
<i>Burning Momentum</i>
Burn your positive momentum to reset it to zero. Burning your momentum cancels any challenge die lower than your momentum. That way you may be able to upgrade a partial success into a full success, or upgrade a failure into a full or partial success. ")
(if:(random:1,2) is 1)[(set: $resMechanic to it + "
<i>Negative Momentum</i>
When you roll with negative momentum, cancel any action roll that equals your negative momentum number. Your action total is solely made up of your skill and any buffs or advantages. ")]]
]
(if: $systemType > 66)[
(display:"Potentially No Attributes")
]
}</tw-passagedata><tw-passagedata pid="39" name="Selecting Two Concepts Big List" tags="" position="109,317" size="100,100">{<--! Make sure the same concept isn't selected twice -->
(set: $concept to (random:1,25))
(if:$concept is $noDouble)[(set:$concept to $noDouble+1)]
(if:$concept is 26)[(set:$concept to 1)]
(set: $noDouble to $concept)
<--! Add to attributes -->
(if: $concept is 1)[
(set: $statoptions to it + (a:"Muckraking", "Camera Skills", "Video Editing", "Ledes", "Doggedness", "Fast Talking", "Stake-Outs", "Dumb Luck", "Doorstepping", "Following the Money", "Piecing It Together", "Getting Underestimated", "Winning Smile", "Resilience", "Sources", "Tip-Offs", "Dive Bars", "Suits", "Senator! Senator!", "Showbiz Contact", "Political Contact", "Science Contact", "Finance Contacts", "Knowing the Risks", "Truth is King", "Personae", "Cop Contact", "Two Sides to Every Story", "Libtard", "Fox", "Propaganda", "I Can't Talk on the Phone", "In Too Deep", "Deadlines", "Shorthand", "Desk Research", "Corruptible", "Bribes", "Languages", "Spin", "Sleaze", "Digital Presence", "Data Science", "Specialist Subject", "Hacking", "Crowdsourcing", "Charm", "Engaging Copy", "Legal Nous"))
(set: $stats to it + (a:"Intrepid", "Principled"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"journalists", "journalists", "news hounds", "reporters", "documentary makers", "investigative journalists"))](else:)[(set:$keyword2 to (either:"working for a struggling newspaper", "chasing up a hot lead", "who are also journalists", "working for the Daily Bugle", "who are rival journalists", "looking for that big scoop"))]
]
(if: $concept is 2)[
(set: $statoptions to it + (a:"Neural Augs", "Brawn", "Brawling", "Technical", "Blades", "Firearms", "Artful", "Vigilant", "Techie", "AI Helper", "Robot Helper", "Drones", "Dex", "Cool", "Streetwise", "Interrogation", "Sleight of Hand", "Telescoping Limbs", "Telemetry", "Organs", "Indominatable", "Small Pharma", "First Aid", "Nanotech", "Demolitions", "Martial Arts", "Wetwork", "Counterware", "Somatic", "Haptic", "Sense", "Strategy", "Will", "Hacking", "Chases", "Electronics", "Cynicism", "RAM", "Statistics", "Risk", "Crazy", "Crypto", "Pokemoney", "Surveillance", "3D Printing", "Biotech", "Sensory Enhancements", "Privacy", "Encrypted", "Redeemable", "Codeswitching", "Complexity", "Traumatized", "Exoskeleton", "Fintech", "Getting Rained On", "Getting Take-Out", "Synthetic Bio", "Coolhunting", "Style", "Piloting", "Driving", "Mechanics", "Immune System"))
(set: $stats to it + (a:"Netrunning", "Gadgets"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"cyberpunks", "hackers and couriers", "a ragtag team of thieves", "outcasts", "cyberpunks", "streetsmart rogues", "petty criminals", "cyber-rebels", "outcasts and misfits"))](else:)[(set:$keyword2 to (either:"in the not-too-distant future", "in the near future", "in a neoliberal dystopia", "in a cyberpunk future", "in a cyberpunk present", "in a techno-dystopia", "in a world ravaged by market capitalism", "in a world ravaged by climate change", "thriving as the trillionaires' reign over reality draws toward its cataclysmic conclusion"))]
]
(if: $concept is 3)[
(set: $statoptions to it + (a:"Ambitious", "Proud", "Jealous", "Anagnorisis", "Peripeteia", "Antick", "Wild and Whirling Words", "Besotted", "Wild", "Ill-Advis'd", "Impractical", "Trusting", "Bloodthirsty", (Either:"Ill-starr'd", "Star-cross'd"), "Unsinew'd", "Termagant", "Wonder-wounded", "Prating", "Clownish", "In Blood Steep'd So Far", "Rash", "Soft-Conscienced", "Patriotic", "Overlawed", "Disdainful of the Commonalty", "Unmeet", "Dauntless", "Braggart", "Consanguineous", "Villainous", "Idle-Headed", "Ill-Temper'd", "Splenetive", "Sanguine", "Goatish", "Robustious", "Melancholic", "Valorous", "Stout", "Zealous", "Noble", "Riotous", "Phlegmatic", "Virtues Upon Themselves Wasted", "Sanctimonious", "Overlawful", "Haunted", "Betrayed", "Guilt-wrack'd", "Merry", "High-Sighted", "Insuppressive", "Green", "Unmeet", "Much Unfurnish'd", "Obsessed"))
(set: $stats to it + (a:"Hubristic", "Flawed"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"Shakespearean kings", "tragic heroes", "Shakespearean tragic heroes", "protagonists of Early Modern plays"))](else:)[(set:$keyword2 to (either:"who are also Shakespearean tragic heroes"))]
]
(if: $concept is 4)[
(if:(random:1,2) is 1)[(set: $statoptions to it + (a:"Shame", "Disgust", "Joy", "Panic Attacks", "Big Mood", "Send Nudes", "Amae", "Well Jels", "Abbiocco", "Chills", "Not One Single Fuck", "Over It", "Personally Attacked", "I'm Dead", "Losing My Mind", "Stan", "Overwhelming Love", "Lovingkindness", "Grim Resolve", "Haters Gonna Hate", "Serenity", "Self-Care", "Reaching Out", "Wisdom", "Blessed", "Bedgasm", "Awumbuk", "Loneliness", "Basorexia", "Compersion", "Wonderment", "Awe", "Wanderlust", "Restlessness", "Stims", "Despair", "Oima", "Nginyiwarrarringu", "Devotion", "Dépaysement", "Delight", "Star Sign", "Dismay", "Luxuriousness", "Voluptuousness", "Epic", "Grim", "Yass Queen", "Dolce Far Niente", "Feels", "Cry", "Obsessed"))] (else:) [(set: $statoptions to it + (a: "Climing the Walls", "Fetch the Boltcutters", "Limerance", "Addicted", "Craving Affirmation", "Duende", "Hiraeth", "Homesickness", "Ecstasy", "Elation", "Calm", "Eudaimonia", "Envy", "Suspicion", "Paranoia", "Fernweh", "Homesickness", "Feierabend", "Big Dryad Energy", "Glee", "On One", "Gratitude", "Pride", "Meds", "Bullet Journal", "Goya", "Ickiness", "Greng Jai", "Indignation", "Ijirashii", "Desire", "Ilinx", "Fury", "Indebtedness", "Melancholy", "Spleen", "Passion", "Optimism", "Pessimism", "Spoopy", "Send Cute Pics", "Pronoia", "Cute Pics", "Feeling Cute", "Feeling Hot", "Selfie Game", "Regret", "Remorse", "Rapture", "Ruinenlust", "Ravens", "Songfulness", "Energy", "Extroversion", "Sehnsucht", "Rawness", "Floof", "Wabi-sabi", "Nesty", "Prousty"))]
(set: $stats to it + (a:"Depression", "Mania", "Anxiety"))
(if:$keyword1 is "blank")[(set:$keyword1 to "feelings-havers")](else:)[(set:$keyword2 to "who have feelings")]
]
(if: $concept is 5)[
(set: $statoptions to it + (a:"Climbing", "Acrobatics", "Perception", "Spirit", "Bojutsu", "Strength", "Disguises", "Potions and Poisons", "Lockpicking", "Kenjutsu", "Illusions", "Lore"))
(set: $stats to it + (a:"Stealth", "Shurikenjutsu", "Tai Jutsu"))
(if:$keyword1 is "blank")[(set:$keyword1 to "ninjas")](else:)[(set:$keyword2 to "who are also ninjas")]
]
(if: $concept is 6)[
(set: $statoptions to it + (a:"Case Law", "Recall", "Charming", "Inspiring", "Droll", "Reasonable", "Corrupt", "Exegesis", "Perceptive", "Overtime", "Ruthless", "Deposition", "Detail", "Brazen", "Negotiation", "Idealistic", "Recall", "Unflappable", "Drafting and Review", "Lawtech", "Friends in High Places", "Friends in Low Places", "Skeletons in the Closet", "Media Darling", "Jury's Favorite", "Bench Bitch", "Social Status", "Sophistry", "Empathy", "Cross-Examination", "Summation", "Mediation", "Rich", "Expensive", "Rebuttal", "Adjournment", "Objection!", "Intuit", "Statutes", "Motion", "Wealth"))
(set: $stats to it + (a:"Loopholes", "Hair-Splitting"))
(if:$keyword1 is "blank")[(set:$keyword1 to "lawyers")](else:)[(set:$keyword2 to (either:"who practise law", "who are also lawyers", "who represent their clients to the best of their abilities"))]
]
(if: $concept is 7)[
(set: $statoptions to it + (a:"He's Behind Me Isn't He", "Absolutely Not and That's Final", "Slapstick", "Irony", "Catchphrases", "Pratfalls", "Escalation", "Shark-Jumping", "Awwwwwww", "Dramatic Irony", "Farce", "Depth", "Insightfulness", "Care", "Friends", "What's Really Important", "That Went Well", "Too Much Information!", "Did I Say That Out Loud?", "Good Talk", "Lady Boner", "That's Not a Thing!", "Thanks ... I Guess", "Epic Similes", "Mistaken Identities", "See What I Did There?", "That. Just. Happened.", "I Didn't NOT X", "And By X I Mean Y", "Here's The Line, Here's You", "Much Ado About Nothing", "Wacky Roommate", "Twins", "Ew! Ew! Ew! Ew!", "Excuses Excuses", "Meta", "Splendid Ham", "Anacoluthon", "Grumpy", "Kvetching", "You Know When ...", "Well That Killed The Moment", "My Hovercraft is Full of Eels", "Jump, I'll Catch You!", "Neologisms", "Verbing", "Reaction Shot", "Thought-Proof", "Silly", "Kind", "Innocent", "Lucky", "Scheming", "Vain", "Arrogant", "Greedy", "Horny", "Not Today Satan", "Shut Up, Evil One!", "Repeat Till Funny", "So Bad It's Good"))
(set: $stats to it + (a:"Zany", "Relateable"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"roommates", "friends", "wacky friends", "sitcom characters"))](else:)[(set:$keyword2 to (either:"who move in together", "who have wacky adventures", "who have adventures about nothing", "whom circumstances throw together", "who star in a sitcom", "who have sitcom-like adventures"))]
]
(if: $concept is 8)[
(set: $statoptions to it + (a:"Crested Skull", (either:"Beaky Bite", "Crushing Jaws"), "Armored Flanks", "Pointy Horns", (either:"Giganticness", "Nimbleness"), (either:"Grippy Claws", "Stompy Feet", "Wings", "Sickle-Clawed Hindleg"), "Luxurious Dinofeathers", (either:"Pack Tactics", "Herd Safety"), "Melancholia", "Dino Tech", "Dino Magic", "Dino Frolics", "Dino Tricks", "Sublimity", "Mammal Pals", "Acceleration", "Turning Circle", "Top Speed", "Lost Grandeur", "Spikes", "Swingy Neck", "Thagomizer", (either:"Dorsal Flanges", "Dorsal Sail"), "Swimming", "Swamp Sense", "Tundra Sense", "Egg Power"))
(set: $stats to it + (a:"Tail", "Thunderous Roar"))
(if:$keyword1 is "blank")[(set:$keyword1 to "dinosaurs"))](else:)[(set:$keyword2 to (either:"who are also dinosaurs"))]
]
(if: $concept is 9)[
(set: $statoptions to it + (a:"Chonking Up", "Bear Hugs", "Bear Charge", "Strength of the Bear", "Unbearable", "Flipping Out", "Pelt", "Cub-Nuzzling", "Hibernation", "Tracking", "Bear Roar", "Armor", "Advice", "Gummi Berry Juice", "Manspeech", "Sweet Tooth", "Magic", "Mystery", "Paws", "Chums", "Kindness", "Lumbering", "Brains", "Trying So Hard To Get Things Right", "Winter Warmth", "Swimming", "Chonkiness", "Sense Picnic", (either:"Scooping Salmon","Never Meeting Penguins"), (either:"Floe-tation Devices","Climbing Trees"), "Ice Lore"))
(set: $stats to it + (a:"Bear Roar", (either:"Eating Honey", "Eating Seals")))
(if:$keyword1 is "blank")[(set:$keyword1 to "bears")](else:)[(set:$keyword2 to "who are also bears")]
]
(if: $concept is 10)[
(set: $statoptions to it + (a:"Pressing Against Windows", "Vigor Mortis", "Freakishly Fast", "Infectious Bite", "BRAAAAAINS", "Tangling Grasp", "Feeding Drag", "Aquazombie", "Pointing", "Smash", "Pole Vaulting", "Scrabbling", "Flailing", "Dolphin Riding", "Rampaging", "Ransacking", "Control Cravings", "Tears of a Zombie", "Mrh?", "Zzzzhhhh!!!!", "Tunnelling", "Ankle Grab", "Autotomizing Limbs", "Summon More", "Gnashing", "Keeping It Together", "Mah Zambah Am An Naz Zambah", "Inexorable"))
(set: $stats to it + (a:"Mortal Memories", "Rottedness"))
(if:$keyword1 is "blank")[(set:$keyword1 to "zombies")](else:)[(if:(random:1,2) is 1)[(set:$keyword2 to $keyword1)(set:$keyword1 to "zombie")] (else:)[(set:$keyword2 to "who are also zombies")]]
]
(if: $concept is 11)[
(if:(random:1,2) is 1)[(set: $statoptions to it + (a:"Sauces", "Grilling", "Frying", "Searing", "Baking", "Roasting", "Stirring Pots", "Stirring Speeches", "Culinary Vision", "Eggmastery", "Tasting and Seasoning", "Spices", "Barbequeing", "Backwoods Cooking", "Baghaar", "Sautéing", "Red Cooking", "Cheesemaking", "Velveting", "Multitasking", "Al Dente", "Deglazing", "Asbestos Hands", "Standing the Heat", "Chopping", "Perfect Timing", "Desserts", "Drink Matching", "Soul Food", "Kinpira", "Yelling", "Safety", "Stocks", "Plating Up", "Staying Tidy", "Teamwork", "Street Food", "Business Management"))] (else:)[(set: $statoptions to it + (a:"Clearing Space", "Presentation", "Improvisation", "Recover Catastrophe", "Perfect Prep", "Herbs and Spices", "Culinary Math", "Delicate Veg", "Budgeting", "Multitasking", "Knife Skills", "Mouthwatering Aromas", "Ingredient Estimating", "Portion Sizing", "Pastamaking", "Culinary Daring", "Communication", "Culinary Versatility", "Short Order", "Well-Tuned Palate", "Spinning Pizza Dough on Finger", "Supervision", "Kitchen Pedagogy", "Literally Juggling Ingredients", "Sourcing Ingredients", (either:"Compassion", "Passion", "Sense of Humor", "Accepting Criticism", "Ego", "First Aid")))]
(set: $stats to it + (a:"Resourceful", "Recipes"))
(if:(random:1,5) is 5)[(set: $stats to it + (a:"Béchamel", "Velouté", "Espagnole", "Sauce tomat", "Hollandaise"))]
(if:$keyword1 is "blank")[(set:$keyword1 to "chefs")](else:)[(set:$keyword2 to (either:"who work in a kitchen", "who are also chefs"))]
]
(if: $concept is 12)[
(if: (random:1,2) is 1)[(set: $statoptions to it + (a:"Serving Fish", "The Library is Open", (either:"Resting on Pretty", "Resting on Ugly"), "Herstory", "The Tea", "Cultural Knowledge", "Make-Up", "Comic Writing", "Improv Comedy", "Tuck", "Realness", "Club Queen", "Pageant Queen", "Sister Solidarity", "Sewing", "Singing", "Dancing", "Uniqueness", "Quick Drag", "Lipsync", "Choreography", "Tranimal", "Activessle", "Drag Wardrobe", "Snatch Game"))] (else:) [(set: $statoptions to it + (a:("Fishy", "Reading", "Sewing", "Kiki", "Make-Up", "Impersonations", "Singing", "Duck's Back", "Tuck", "Body-ody-ody", "Drag Family", "Runway", "Ambition", "Love", "Death Drops", "Werking", "Realness", "Elegenza", "Polish", "Gothy", "Diva", "Genderfuck", "Uniqueness", "Edginess", "Glamazon", "Campy", "Fierce", "High Fashion", "Artiness", "Catch Phrases", "Comic Writing", "Improv Comedy", "Resilience")))]
(set: $stats to it + (a:"Silhouette", "Selling It", "Shady"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"drag queens", "drag queens", "drag queens", "drag queens", "drag queens", "drag performers", "INNOCENT WOMEN"))](else:)[(set:$keyword2 to (either:"on the drag scene"))]
]
(if: $concept is 13)[
(set: $statoptions to it + (a:"Something's Not Right", "Flash of Inspiration", "Nosy", "Wait, What Did You Just Say?", "That's It!", "Eliminating the Impossible", "Find Fresh Leads", "Derring-Do", "Incredibly Useful Hobby", "I Did Some Research", "Photographic Memory", "Salient Detail", "A Nose for Red Herrings", "Obscure Knowledge", "Chase Scene", "Sifting Paperwork", "Innocuous", "Harmless", "Rifling Drawers", "Simulations and Recreations", "Fine-Toothed Comb", "Hard to Fool", "Stronger Than You Look", "I Know Someone Who Can Help"))
(set: $stats to it + (a:"Intuitive", "Sneaky"))
(if:$keyword1 is "blank")[(set:$keyword1 to "amateur sleuths")](else:)[(set:$keyword2 to (either:"who are also amateur sleuths", "who solve crimes", "who solve mysteries", "who investigate mysteries", "who solve crimes", "who solve crimes in a sleepy seaside town"))]
]
(if: $concept is 14)[
(if:(random:1,4) is 1) [(set: $statoptions to it + (a:"Almond Biscuits", "Bakpia", "Cha Siu Bao", "Fa Gao", "Jin Deui", "Lotus Seed Buns", "Mahua", "Mantou", "Mooncakes", "Nuomici", "Paper-Wrapped Cakes", "Pineapple Buns", "Rousong", "Sachima", "Sou", "Sponge Cakes", "Wife Cakes", "Yong Peng", "Zongzi"))] (else:) [(set: $statoptions to it + (a:"Baozi", "Sou", "Cookies", "Biscuits", "Bread", "Choux", "Tarts", "Torts", "Pies", (either:"Fudge", "Caramels and Fudges"), "Doughs", "Donuts", "Strudels", "Creaming", "Folding", "Mise en Place", "Meringues", "Custards", "Petits Fours", "Folding", "Tempering", "Unmolding", "Puddings", "Glazing", "Ganache", "Steamed Buns", "Baked Buns", "Eclairs", "Jalebi", "Croissants", "Mousses", "Crêpes", "Piping", "Short Crust", "Puff Pastry", "Entremet", "Blind Baking", "Bagels", "Flatbreads", "Brownies", "Aeration", "Fudge", "Toffee", "Frosting", "Viennoiserie", "Chocolatiering"))]
(set: $stats to it + (a:"Pastries", "Cakes"))
(if:$keyword1 is "blank")[(set:$keyword1 to "bakers")](else:)[(set:$keyword2 to (either:"trying to start a bakery", "who are also bakers", "who are also pastry chefs", "trying to start a patisserie", "who work in a bakery", "who are also confectioners"))]
]
(if: $concept is 15)[
(set: $statoptions to it + (a:"Necromancy", "Pyromancy", "Abjuration", "Conjuration", "Divination", "Enchantment", "Evocation", "Illusion", "Psionics", "Flight", "Transmutation", "Weatherworking", "Alchemy", "Healing", "Cantrips", "Love Spells", "Shadowshaping", "Faerie Friendship", "Demonology", "Damned", "Powders and Potions", "Rituals", "Bestiary", "Elemental Magic", "Meat Magic", "Possession", "Metalmelt", "Runes", "Prophecy", "Haruspicy", "Blood Magic", "Dream Magic", "Somatic Magic", "Mathemagic", "Lithomancy", "Denizens of the Crystal Hell", "Massmind", "Worldwords", "Affective Thaumaturgy", "Regeneration", "Quickfire", "Banes", "Blessings", "Blasts", "Horrors", "Temporal Spells", "Dispellations", "Unwhispering", "Thorntongue", "Wormworking", "Songs of Power", "Forbidden Lore", "Hexes", "Counterspells", "Astral Travel", "Geomancy", "Golemcraft", "Hedge Magic", "Finding", "Binding", "True Names"))
(set: $stats to it + (a:"Mana", "Lore"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"wizards", "wizards", "warlocks", "sorcerers", "mages", "sorcerers' apprentices"))](else:)[(set:$keyword2 to (either:"who do magic", "who are also wizards", "at a school for wizards"))]
]
(if: $concept is 16)[
(set: $statoptions to it + (a:"Finding Pollen", (either:"Making Honey", "Bumbling"), "Evading Raindrops", (either:"Making Wax","Nesting"), "Royal Jelly", "Navigating", "Eusocial", "Nimble", "Mates with Mites", "Keeping Secrets", "Mathematics", (either:"Leafcutting","Waggle Dancing")))
(set: $stats to it + (a:"Buzzing Around", "Stinger"))
(if:$keyword1 is "blank")[(set:$keyword1 to "bees")](else:)[(set:$keyword2 to (either:"who are also bees"))]
]
(if: $concept is 17)[
(set: $statoptions to it + (a:"Volatility", "Maturity Period", "Convertibility", "Market Thickness", "Risk", "Return", "Taxability", "Transparency", "Complexity", "Beta"))
(set: $stats to it + (a:"Moneyness", "Liquidity"))
(if:$keyword1 is "blank")[(set:$keyword1 to "financial assets")](else:)[(set:$keyword2 to (either:"who are also financial assets"))]
]
(if: $concept is 18)[
(set: $statoptions to it + (a:"Ropin'", "Learnin'", "Cattle", "Wagons", "Heists", "Poker", "Bar-room", "Quick Draw", "Drinkin'", "Trappin'", "Tarnation!", "Gamblin'", "Cheatin'", "Lyin'", "Wayfindin'", "Cowpunchin'", "Wranglin'", "Medicine", "Horse Sense", "Cow Sense", "Prospectin'", "Shoein'", "Callin'", "Cahoots", "Dysentry", "Farmin'", "Languages", "Beavers", "Grizzlies", "Fishin'", "Minin'", "Deer", "Cryin'"))
(set: $stats to it + (a:"Ridin'", "Shootin'" ))
(if:(random:1,3) is 1)[(set: $stats to it + (a:"Rootin'", "Tootin'"))]
(if:$keyword1 is "blank")[(set:$keyword1 to (Either:"Old West outlaws", "prospectors and pioneers"))](else:)[(set:$keyword2 to (either:"in the Old West"))]
]
(if: $concept is 19)[
(set: $statoptions to it + (a:"Grime", "Trap", "Drill", "Conscious", "Gangsta", "Old School", "Crunk", "Mumble", "Soundcloud", "Beef", "Famous", "Innovative", "Legendary", "Melodic", "Lyrical", "OG", "Boom Bap", "G-Funk", "Punchlines", "Beef", "Earworms", "Migos", "Soulful", "Crunk", "Dancehall", "Kwaito", "NYC Jazz Rap", "Juggalo", "Underground", "Club", "Reggaetron", "Chopped & Screwed", "Memphis", "Chopper", "Brand", "Hustle", ))
(set: $stats to it + (a:"Flow", "Production", "Freestyling"))
(if:(random:1,3) is 1)[(set: $statoptions to it + (a:"Garage", "Wasteman", "Skengman", "Road", "Peng", "Trip Hop", "Dubstep", "Mandems", "D&B", "Sending", "Clashing", "Merking", "Shotter", "Food", "Gassed", "P"))]
(if:(random:1,4) is 1)[(set: $stats to it + (a:"Graffiti", "Beatboxing", "Turntables", "Breakdancing"))]
(if:$keyword1 is "blank")[(set:$keyword1 to "rappers")](else:)[(set:$keyword2 to (either:"who rap"))]
]
(if: $concept is 20)[
(set: $statoptions to it + (a:"Blocking", "Boundaries", "Catching", (either:"Wicket-Keeping", "Glovework"), "Biffing", "Opening", "Ball Tampering", "Dinks", "Dilscoops", "Chin Music", "Waiting", "Gardening", "Nurdling", "Footwork", "Corkers", "Jaffas", "Peaches", "Occupying the Crease", "Shepherding the strike", "It raining", "Winning the toss", "Sticky wickets", "Sledging", "Trundling", "Captaining", "Umpiring"))
(set: $stats to it + (a:"Batting", "Fielding"))
(if:(random:1,3) is 1)[(set: $stats to it + (a:"Spin", "Pace"))](else:)[(set: $stats to it + (a:"Bowling"))]
(if:$keyword1 is "blank")[(set:$keyword1 to "cricketers")](else:)[(set:$keyword2 to (either:"who play cricket"))]
]
(if: $concept is 21)[
(set: $stats to it + (a:"Operating the Front of the Horse", "Operating the Back of the Horse", "Rapport with Other Half of Horse"))
(if:$keyword1 is "blank")[(set:$keyword1 to "pantomime horses")](else:)[(set:$keyword2 to (either:"in a pantomime horse", "who operate pantomime horses", "who are also pantomime horses", "who are also performing in the Christmas Panto, portraying the character of 'the Horse'"))]
]
(if: $concept is 22)[
(set: $statoptions to it + (a:"Mesmerise", "Pestilence", "Nightwisp", "Hysteria", "Scent Blood", "Binding Bite", "Pallor", "Noblesse Oblige", "Daylight", "Steal Memory", "Bal Masqué", "Impulse Control", "Torpor", "Enthral", "Become Mist", "Become Bats", "Mortal Mingling", "Feeding Frenzy", "Cross Running Water", "Modern Life", "Slow Time", "Telepath", "Eking Kiss", "Cape", "Icy Grasp", "Garlic", "Aristocratic Hiss", "Levitate", "Fabulous Wardrobe", "Sense Kink", "Slumber", "Age (Centuries)", "Old Soul", "Demand Devotion", "Shapeshift", "Shadowstep", "Beguile", "Impalpable Kiss", "Humanity", "Veganism", "Rat Feast", "Vampiric Dream", "Be Problematic", "Dark Embrace", "Sense Slayer", "Delight", "Mansion", "Crypt", "Tender Sip"))
(set: $stats to it + (a:"Stalk", "Drink"))
(if:$keyword1 is "blank")[(set:$keyword1 to "vampires")](else:)[(if:(random:1,2) is 1)[(set:$keyword2 to $keyword1)(set:$keyword1 to "vampire")] (else:)[(set:$keyword2 to "who are also vampires")]]
]
(if: $concept is 23)[
(set: $statoptions to it + (a:"Comm Strength", "Com Honour", "Stone Eating", "Guardian", "Ashblow Hair", "Rings", "Discipline", "Geneer", "Lorist", "Sesuna", "Knapping"))
(set: $stats to it + (a:"Strongback", "Resistant", "Breeding", "Innovation", "Leadership", "Orogeny", "Geomestry"))
(if:$keyword1 is "blank")[(set:$keyword1 to "Orogenes and Guardians")](else:)[(if:(random:1,2) is 1)[(set:$keyword2 to $keyword1)(set:$keyword1 to "Stillness-dwelling")] (else:)[(set:$keyword2 to "trying to survive a Season")]]
]
(if: $concept is 24)[
(set: $statoptions to it + (a:"Read-a-thon", "Readalong", "TBR", "Book Haul", "Tag Game", "Reading Speed", "Focus", "Troll Control", "Livestream", "Interviewing", "Genre Knowledge", "Celeb Connects"))
(set: $stats to it + (a:"Video Editing", "Booktalk", "Follower Base"))
(if:$keyword1 is "blank")[(set:$keyword1 to "BookTubers")](else:)[(if:(random:1,2) is 1)[(set:$keyword2 to $keyword1)(set:$keyword1 to "BookTuber")] (else:)[(set:$keyword2 to "on BookTube")]]
]
(if: $concept is 25)[
(set: $isSuperHero to true)
(set: $statoptions to it + (a:"Super Speed", "Super Stealth", "Wallcrawling", "Power Suit", "Amazing Reflexes", "Super Jump", "Psionics", "Elemental Power", "Super Senses", "Super Immunity", "Cosmic Magic", "Super Morphology", "Advanced Technology", "Energy Manipulation", "Meta", "Technopathy", "Super Bio", "Scientific Genius", "Super Weird"))
(set: $stats to it + (a:"Super Strength", "Regeneration"))
(if:$keyword1 is "blank")[(set:$keyword1 to (either:"secret agents", "crime-fighters", "elite agents", "agents", "super-soldiers", "chosen ones", "caped crusaders"))](else:)[(if:(random:1,2) is 1)[(set:$keyword2 to $keyword1)(set:$keyword1 to "planet-saving")] (else:)[(set:$keyword2 to (either:"who save the planet every week", "who fight evil in masks and tights", "who save the world in spandex"))]]
]
Ghosts
Pirates
Superheroes
Cowboys
Gamers
Incels
High Schoolers
Police Procedurals
Teens with Powers
The Mona Lisa
Conservators
Butterfly Collectors
Hippies
Classical Orators
Holodeck Simulations
Pesky Kids
Architects
Doctors
Investment Bankers
Dental Hygienists