bcdice/BCDice

View on GitHub

Showing 1,176 of 1,233 total issues

Similar blocks of code found in 4 locations. Consider refactoring.
Open

        if /(\w)DPT([+\-\d]*)/i =~ string
          ttype = 'ダメージペナルティー'
          head = Regexp.last_match(1)
          mod = ArithmeticEvaluator.eval(Regexp.last_match(2)) if Regexp.last_match(2)

Severity: Minor
Found in lib/bcdice/game_system/GundogZero.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/GundogRevised.rb on lines 72..78
lib/bcdice/game_system/GundogRevised.rb on lines 81..87
lib/bcdice/game_system/GundogZero.rb on lines 49..55

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

        if /(\w)FT([+\-\d]*)/i =~ string
          ttype = 'ファンブル'
          head = Regexp.last_match(1)
          mod = ArithmeticEvaluator.eval(Regexp.last_match(2)) if Regexp.last_match(2)

Severity: Minor
Found in lib/bcdice/game_system/GundogZero.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/GundogRevised.rb on lines 72..78
lib/bcdice/game_system/GundogRevised.rb on lines 81..87
lib/bcdice/game_system/GundogZero.rb on lines 40..46

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

        def initialize(name, type, items)
          @name = name
          @items = items.freeze

          m = /^(\d+)D(\d+)$/i.match(type)
Severity: Minor
Found in lib/bcdice/game_system/beginning_idol/chain_table.rb and 3 other locations - About 20 mins to fix
lib/bcdice/dice_table/chain_table.rb on lines 9..19
lib/bcdice/dice_table/table.rb on lines 18..28
lib/bcdice/game_system/one_way_heroics/random_event_table.rb on lines 7..17

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

        if dice_total <= 2
          Result.fumble(translate("BeginningIdol.fumble"))
        elsif dice_total >= 12
          Result.critical(translate("BeginningIdol.special"))
        elsif total >= target
Severity: Minor
Found in lib/bcdice/game_system/BeginningIdol.rb and 1 other location - About 20 mins to fix
lib/bcdice/game_system/MagicaLogia.rb on lines 68..76

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

          if dice_total <= 2
            Result.fumble(translate("fumble"))
          elsif dice_total >= 12
            Result.critical(translate("MagicaLogia.special"))
          elsif total >= target
Severity: Minor
Found in lib/bcdice/game_system/MagicaLogia.rb and 1 other location - About 20 mins to fix
lib/bcdice/game_system/BeginningIdol.rb on lines 81..89

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

      def initialize(name, type, items)
        @name = name
        @items = items.freeze

        m = /(\d+)D(\d+)/i.match(type)
Severity: Minor
Found in lib/bcdice/dice_table/table.rb and 3 other locations - About 20 mins to fix
lib/bcdice/dice_table/chain_table.rb on lines 9..19
lib/bcdice/game_system/beginning_idol/chain_table.rb on lines 10..20
lib/bcdice/game_system/one_way_heroics/random_event_table.rb on lines 7..17

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

        if /(\w)FT([+\-\d]*)/i =~ string
          ttype = 'ファンブル'
          head = Regexp.last_match(1)
          mod = ArithmeticEvaluator.eval(Regexp.last_match(2)) if Regexp.last_match(2)

Severity: Minor
Found in lib/bcdice/game_system/GundogRevised.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/GundogRevised.rb on lines 72..78
lib/bcdice/game_system/GundogZero.rb on lines 40..46
lib/bcdice/game_system/GundogZero.rb on lines 49..55

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 28.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "BL" => {
            name: "血脈の喪失表",
            type: '1D20',
            table: [
              '髪の色。一夜にしてあなたの髪は白くなった。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 234..258
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "OG" => {
            name: "応天門通過描写表",
            type: '1D20',
            table: [
              '光捕らへど暗し。新たなる地獄の門に落つる己を知りたり。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 234..258

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "SL" => {
            name: "魂魄の喪失表",
            type: '1D20',
            table: [
              '誇り。誇りなど残ってはいない。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 234..258
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "RG" => {
            name: "羅生門通過描写表",
            type: '1D20',
            table: [
              'むごき所業、目にせり。心強張りて、常の様にてあれず.',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 234..258
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

      def roll_bmr_table()
        total_n = @randomizer.roll_once(10)
        text = MADNESS_REAL_TIME_TABLE[total_n - 1]

        time_n = @randomizer.roll_once(10)
Severity: Minor
Found in lib/bcdice/game_system/PulpCthulhu.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/Cthulhu7th.rb on lines 274..280
lib/bcdice/game_system/Cthulhu7th.rb on lines 297..303
lib/bcdice/game_system/PulpCthulhu.rb on lines 113..119

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "VG" => {
            name: "朱雀門通過描写表",
            type: '1D20',
            table: [
              '雷響きて、暗霊いよいよ濃ゆし。己が先を見せるるが如し。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 3 locations. Consider refactoring.
Open

        'FT' => DiceTable::RangeTable.new(
          '大失敗表',
          '1D12',
          [
            [1..3, '【余裕】が3点減少する(最低0まで)'],
Severity: Minor
Found in lib/bcdice/game_system/KemonoNoMori.rb and 2 other locations - About 20 mins to fix
lib/bcdice/game_system/Warhammer4.rb on lines 318..329
lib/bcdice/game_system/Yggdrasill.rb on lines 432..443

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "LR" => {
            name: "喪失取戻表",
            type: '1D20',
            table: [
              '鬼化。妄執かくして鬼と結実す。欠けたるところすでになし。あやかし、己の欠けたるを足せり。すなわちその身、人ならず。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 99..123
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 234..258
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

      def roll_bmr_table()
        total_n = @randomizer.roll_once(10)
        text = MADNESS_REAL_TIME_TABLE[total_n - 1]

        time_n = @randomizer.roll_once(10)
Severity: Minor
Found in lib/bcdice/game_system/Cthulhu7th.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/Cthulhu7th.rb on lines 297..303
lib/bcdice/game_system/PulpCthulhu.rb on lines 90..96
lib/bcdice/game_system/PulpCthulhu.rb on lines 113..119

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 3 locations. Consider refactoring.
Open

        "MIKUZI" => DiceTable::RangeTable.new(
          "おみくじ",
          "1D100",
          [
            [1..17, "大吉"],
Severity: Minor
Found in lib/bcdice/game_system/Yggdrasill.rb and 2 other locations - About 20 mins to fix
lib/bcdice/game_system/KemonoNoMori.rb on lines 112..123
lib/bcdice/game_system/Warhammer4.rb on lines 318..329

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 9 locations. Consider refactoring.
Open

          "LL" => {
            name: "生様の喪失表",
            type: '1D20',
            table: [
              '主君の寵愛。不興を買ってしまった。',
Severity: Major
Found in lib/bcdice/game_system/Nuekagami.rb and 8 other locations - About 20 mins to fix
lib/bcdice/game_system/Nuekagami.rb on lines 45..69
lib/bcdice/game_system/Nuekagami.rb on lines 72..96
lib/bcdice/game_system/Nuekagami.rb on lines 126..150
lib/bcdice/game_system/Nuekagami.rb on lines 153..177
lib/bcdice/game_system/Nuekagami.rb on lines 180..204
lib/bcdice/game_system/Nuekagami.rb on lines 207..231
lib/bcdice/game_system/Nuekagami.rb on lines 234..258
lib/bcdice/game_system/Nuekagami.rb on lines 261..285

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

        "WPFA" => DiceTable::Table.new(
          "艦載機開発表(燃料3/弾薬6/鋼材3/ボーキ6)",
          "4D6",
          [
            "開発失敗!(資材だけ失う)",
Severity: Minor
Found in lib/bcdice/game_system/KanColle.rb and 1 other location - About 20 mins to fix
lib/bcdice/game_system/KanColle.rb on lines 615..640

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

      def roll_bms_table()
        total_n = @randomizer.roll_once(10)
        text = MADNESS_SUMMARY_TABLE[total_n - 1]

        time_n = @randomizer.roll_once(10)
Severity: Minor
Found in lib/bcdice/game_system/PulpCthulhu.rb and 3 other locations - About 20 mins to fix
lib/bcdice/game_system/Cthulhu7th.rb on lines 274..280
lib/bcdice/game_system/Cthulhu7th.rb on lines 297..303
lib/bcdice/game_system/PulpCthulhu.rb on lines 90..96

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 27.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Severity
Category
Status
Source
Language