bcdice 3.13.0 → 3.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +104 -0
  3. data/i18n/Arianrhod/ko_kr.yml +3 -0
  4. data/i18n/Cthulhu/en_us.yml +11 -0
  5. data/i18n/Cthulhu/zh_hant.yml +1 -1
  6. data/i18n/CyberpunkRed/ja_jp.yml +389 -0
  7. data/i18n/CyberpunkRed/ko_kr.yml +389 -0
  8. data/i18n/DoubleCross/ja_jp.yml +53 -0
  9. data/i18n/DoubleCross/ko_kr.yml +52 -0
  10. data/i18n/FinalFantasyXIV/en_us.yml +4 -0
  11. data/i18n/FinalFantasyXIV/ja_jp.yml +4 -0
  12. data/i18n/FutariSousa/ja_jp.yml +284 -127
  13. data/i18n/KillDeathBusiness/ja_jp.yml +198 -0
  14. data/i18n/KizunaBullet/ja_jp.yml +653 -0
  15. data/i18n/MagicaLogia/ko_kr.yml +2 -2
  16. data/i18n/MonotoneMuseum/ja_jp.yml +246 -14
  17. data/i18n/MonotoneMuseum/ko_kr.yml +227 -0
  18. data/i18n/SkynautsBouken/ja_jp.yml +114 -0
  19. data/i18n/SkynautsBouken/ko_kr.yml +114 -0
  20. data/i18n/StratoShout/ko_kr.yml +102 -102
  21. data/i18n/TensaiGunshiNiNaro/ja_jp.yml +126 -0
  22. data/i18n/UnsungDuet/ja_jp.yml +62 -0
  23. data/i18n/UnsungDuet/ko_kr.yml +62 -0
  24. data/i18n/en_us.yml +5 -0
  25. data/i18n/zh_hant.yml +5 -0
  26. data/lib/bcdice/dice_table/range_table.rb +24 -0
  27. data/lib/bcdice/game_system/Agnostos.rb +248 -0
  28. data/lib/bcdice/game_system/Aionia.rb +131 -0
  29. data/lib/bcdice/game_system/AniMalus.rb +99 -59
  30. data/lib/bcdice/game_system/Arianrhod_Korean.rb +32 -0
  31. data/lib/bcdice/game_system/ArknightsFan.rb +245 -87
  32. data/lib/bcdice/game_system/BlackJacket.rb +244 -0
  33. data/lib/bcdice/game_system/BlackJacket_Korean.rb +244 -0
  34. data/lib/bcdice/game_system/CharonSanctions.rb +112 -0
  35. data/lib/bcdice/game_system/ConvictorDrive.rb +5 -4
  36. data/lib/bcdice/game_system/Cthulhu7th.rb +1 -1
  37. data/lib/bcdice/game_system/Cthulhu7th_ChineseTraditional/full_auto.rb +293 -0
  38. data/lib/bcdice/game_system/Cthulhu7th_ChineseTraditional/rollable.rb +43 -0
  39. data/lib/bcdice/game_system/Cthulhu7th_ChineseTraditional.rb +470 -306
  40. data/lib/bcdice/game_system/Cthulhu_English.rb +59 -0
  41. data/lib/bcdice/game_system/CyberpunkRed.rb +15 -6
  42. data/lib/bcdice/game_system/CyberpunkRed_Korean.rb +66 -0
  43. data/lib/bcdice/game_system/DivineCharger.rb +841 -0
  44. data/lib/bcdice/game_system/DoubleCross.rb +18 -1
  45. data/lib/bcdice/game_system/DoubleCross_Korean.rb +5 -1
  46. data/lib/bcdice/game_system/FinalFantasyXIV.rb +115 -0
  47. data/lib/bcdice/game_system/FinalFantasyXIV_English.rb +39 -0
  48. data/lib/bcdice/game_system/FullFace.rb +63 -12
  49. data/lib/bcdice/game_system/FutariSousa.rb +105 -13
  50. data/lib/bcdice/game_system/Garactier.rb +479 -0
  51. data/lib/bcdice/game_system/GardenOrder.rb +390 -9
  52. data/lib/bcdice/game_system/GundogRevised.rb +8 -8
  53. data/lib/bcdice/game_system/Insane_Korean.rb +1 -1
  54. data/lib/bcdice/game_system/InvisibleLiar.rb +79 -0
  55. data/lib/bcdice/game_system/KillDeathBusiness.rb +155 -3
  56. data/lib/bcdice/game_system/KimitoYell.rb +568 -0
  57. data/lib/bcdice/game_system/KizunaBullet.rb +240 -0
  58. data/lib/bcdice/game_system/KyokoShinshoku.rb +51 -8
  59. data/lib/bcdice/game_system/Magius.rb +125 -0
  60. data/lib/bcdice/game_system/Magius_3rdNewTokyoCity.rb +62 -0
  61. data/lib/bcdice/game_system/MonotoneMuseum.rb +14 -1
  62. data/lib/bcdice/game_system/MonotoneMuseum_Korean.rb +4 -4
  63. data/lib/bcdice/game_system/NRR.rb +2 -2
  64. data/lib/bcdice/game_system/NSSQ.rb +17 -9
  65. data/lib/bcdice/game_system/NervWhitePaper.rb +129 -0
  66. data/lib/bcdice/game_system/RogueLikeHalf.rb +198 -0
  67. data/lib/bcdice/game_system/RuneQuestRoleplayingInGlorantha.rb +16 -13
  68. data/lib/bcdice/game_system/ShinobiGami.rb +73 -43
  69. data/lib/bcdice/game_system/ShuumatsuBargainWars.rb +203 -0
  70. data/lib/bcdice/game_system/SkynautsBouken.rb +49 -134
  71. data/lib/bcdice/game_system/SkynautsBouken_Korean.rb +57 -0
  72. data/lib/bcdice/game_system/StratoShout_Korean.rb +1 -1
  73. data/lib/bcdice/game_system/SwordWorld.rb +5 -1
  74. data/lib/bcdice/game_system/SwordWorld2_5.rb +3 -2
  75. data/lib/bcdice/game_system/TensaiGunshiNiNaro.rb +262 -0
  76. data/lib/bcdice/game_system/TheIndieHack.rb +82 -0
  77. data/lib/bcdice/game_system/TheOneRing2nd.rb +406 -0
  78. data/lib/bcdice/game_system/TheUnofficialHollowKnightRPG.rb +185 -0
  79. data/lib/bcdice/game_system/TorgEternity.rb +35 -6
  80. data/lib/bcdice/game_system/TrailOfCthulhu.rb +139 -0
  81. data/lib/bcdice/game_system/UnsungDuet.rb +17 -75
  82. data/lib/bcdice/game_system/UnsungDuet_Korean.rb +41 -0
  83. data/lib/bcdice/game_system/Utakaze.rb +55 -2
  84. data/lib/bcdice/game_system/Warhammer4.rb +124 -3
  85. data/lib/bcdice/game_system/WoW.rb +161 -0
  86. data/lib/bcdice/game_system/YankeeMustDie.rb +192 -0
  87. data/lib/bcdice/game_system/YearZeroEngine.rb +225 -28
  88. data/lib/bcdice/game_system/Yotabana.rb +62 -0
  89. data/lib/bcdice/game_system/YuMyoKishi.rb +141 -0
  90. data/lib/bcdice/game_system/cyberpunk_red/tables.rb +111 -473
  91. data/lib/bcdice/game_system/kizuna_bullet/tables.rb +171 -0
  92. data/lib/bcdice/game_system/sword_world/rating_lexer.rb +1 -0
  93. data/lib/bcdice/game_system/sword_world/rating_options.rb +4 -1
  94. data/lib/bcdice/game_system/sword_world/rating_parsed.rb +5 -0
  95. data/lib/bcdice/game_system/sword_world/rating_parser.rb +129 -115
  96. data/lib/bcdice/game_system.rb +31 -0
  97. data/lib/bcdice/version.rb +1 -1
  98. metadata +50 -6
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "bcdice/game_system/Cthulhu"
4
+
5
+ module BCDice
6
+ module GameSystem
7
+ class Cthulhu_English < Cthulhu
8
+ # ゲームシステムの識別子
9
+ ID = 'Cthulhu:English'
10
+
11
+ # ゲームシステム名
12
+ NAME = 'Call of Cthulhu'
13
+
14
+ # ゲームシステム名の読みがな
15
+ SORT_KEY = '国際化:English:Call of Cthulhu'
16
+
17
+ # ダイスボットの使い方
18
+ HELP_MESSAGE = <<~INFO_MESSAGE_TEXT
19
+ c=Critical Rate / f=Fumble Rate / s=Special
20
+
21
+ 1d100<=n c・f・s AllOff(Does Simple Numeric Comparison Only)
22
+
23
+ ・Roll Command that determines cfs
24
+
25
+ CC Does a 1d100 roll c=1、f=100
26
+ CCB Same as above、c=5、f=96
27
+
28
+ Ex:CC<=80 (Rolls using 80 as skill value with 1% cf rule applied)
29
+ Ex:CCB<=55 (Rolls using 55 as skill value with 5% cf rule applied)
30
+
31
+ ・About Roll Combination
32
+
33
+ CBR(x,y) c=1、f=100
34
+ CBRB(x,y) c=5、f=96
35
+
36
+ ・About Opposed Rolls
37
+ RES(x-y) c=1、f=100
38
+ RESB(x-y) c=5、f=96
39
+
40
+ ※Malfunction Number Determination
41
+
42
+ ・CC(x) c=1、f=100
43
+ x=Malfunction Number. Outputs(text "Fumble&Malfunction")together, when roll result is equal or above x, and fumble happens simultaneously.
44
+ If not a fumble, outputs text "Malfunction" regardless of success/failure(Outputs the overwritten result, not outputting success/failure)
45
+
46
+ ・CCB(x) c=5、f=96
47
+ Same as above
48
+ INFO_MESSAGE_TEXT
49
+
50
+ register_prefix_from_super_class()
51
+
52
+ def initialize(command)
53
+ super(command)
54
+
55
+ @locale = :en_us
56
+ end
57
+ end
58
+ end
59
+ end
@@ -44,8 +44,18 @@ module BCDice
44
44
   STOREA :店主またはレジ係
45
45
   STOREB :変わった客その1
46
46
   STOREC :変わった客その2
47
+ ・夜の市
48
+  NMCT :商品の分野
49
+  NMCFO :食品とドラッグ
50
+  NMCME :個人用電子機器
51
+  NMCWE :武器と防具
52
+  NMCCY :サイバーウェア
53
+  NMCFA :衣料品とファッションウェア
54
+  NMCSU :サバイバル用品
47
55
  HELP
48
56
 
57
+ TABLES = translate_tables(@locale)
58
+
49
59
  # 判定の正規表現
50
60
  CP_RE = /^CP(?<ability>\d+)?(?<modifier>[+-]\d+)?(?<target>>=\d+)?/.freeze
51
61
 
@@ -58,8 +68,7 @@ module BCDice
58
68
 
59
69
  def eval_game_system_specific_command(command)
60
70
  debug("eval_game_system_specific_command begin string", command)
61
-
62
- cp_roll_result(command) || roll_tables(command, TABLES)
71
+ cp_roll_result(command) || roll_tables(command, self.class::TABLES)
63
72
  end
64
73
 
65
74
  private_constant :CP_RE
@@ -105,21 +114,21 @@ module BCDice
105
114
  result.text += ' > '
106
115
 
107
116
  if result.critical?
108
- result.text += '決定的成功!'
117
+ result.text += "#{translate('CyberpunkRed.critical')}"
109
118
  result.text += "#{dices.last}[#{dices.last}] > "
110
119
  end
111
120
  if result.fumble?
112
- result.text += '決定的失敗!'
121
+ result.text += "#{translate('CyberpunkRed.fumble')}"
113
122
  result.text += "#{dices.last}[#{dices.last}] > "
114
123
  end
115
124
 
116
125
  result.text += total.to_s
117
126
 
118
127
  if result.success?
119
- result.text += '成功'
128
+ result.text += "#{translate('success')}"
120
129
  end
121
130
  if result.failure?
122
- result.text += '失敗'
131
+ result.text += "#{translate('failure')}"
123
132
  end
124
133
 
125
134
  return result
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "bcdice/game_system/CyberpunkRed"
4
+
5
+ module BCDice
6
+ module GameSystem
7
+ class CyberpunkRed_Korean < CyberpunkRed
8
+ # ゲームシステムの識別子
9
+ ID = 'CyberpunkRed:Korean'
10
+
11
+ # ゲームシステム名
12
+ NAME = '사이버펑크 RED'
13
+
14
+ # ゲームシステム名の読みがな
15
+ SORT_KEY = '国際化:Korean:사이버펑크'
16
+
17
+ # ダイスボットの使い方
18
+ HELP_MESSAGE = <<~HELP
19
+ ・판정 CPx+y>z
20
+  (x=능력치와 기능치의 합(base)、y=수정치(mod)、z=난이도(DV) or 방어자의 값 x、y、z는 생략 가능)
21
+  예시)CP12, CP10+2>12, CP7-1, CP8+4, CP7>12, CP, CP>9
22
+
23
+ 각종 표
24
+ ・치명적인 손상표
25
+  FFD :신체에 치명적 손상
26
+  HFD :머리에 치명적 손상
27
+ ・조우 표
28
+  NCDT :나이트시티(낮)
29
+  NCMT :나이트 시티(심야)
30
+ ・스크림 시트(신문)
31
+  SCSR :스크림 시트(랜덤)
32
+  SCST :스크림 시트 카테고리
33
+  SCSA :헤드 라인A
34
+  SCSB :헤드 라인B
35
+  SCSC :헤드 라인C
36
+ ・가장 가까운 자판기
37
+  VMCR :가장 가까운 자판기표
38
+  VMCT :자판기 유형 결정표
39
+  VMCE :식품
40
+  VMCF :패션
41
+  VMCS :이상한 물건
42
+ ・보데가(상점) 손님
43
+  STORE :상점 손님과 점원
44
+  STOREA :점주 또는 계산원
45
+  STOREB :별난 손님 1
46
+  STOREC :별난 손님 2
47
+ ・야시장
48
+  NMCT :상품의 분야
49
+  NMCFO :음식과 약물
50
+  NMCME :개인용 전자기기
51
+  NMCWE :무기와 갑옷
52
+  NMCCY :사이버웨어
53
+  NMCFA :의류 및 패션웨어
54
+  NMCSU :생존 장비(servival gear)
55
+ HELP
56
+
57
+ def initialize(command)
58
+ super(command)
59
+ @locale = :ko_kr
60
+ end
61
+
62
+ register_prefix_from_super_class()
63
+ TABLES = translate_tables(:ko_kr)
64
+ end
65
+ end
66
+ end