Skip to content

pack_author_guide

github-actions[bot] edited this page May 23, 2026 · 1 revision

Modpack Author Guide

Jump to 日本語: 日本語

English

This document is a memo for modpack authors who want to tune Replicated Integration matter values. It focuses on the operations needed to balance a pack, not the internal implementation.

Basic approach

Replicated Integration first reads recipes from supported mods and estimates matter values from inputs to outputs.

If the results do not match the pack's intent, it is easiest to adjust in this order:

  1. Use /repint matter get ... to see the current value.
  2. Use /repint matter deny ... to stop items you do not want to replicate.
  3. Use /repint matter set ... to try explicit values.
  4. If it looks good, run /repint commit to save to config.
  5. Move grouped rules into KubeJS.

Checking matter

Single item:

/repint matter get item minecraft:diamond

Tag:

/repint matter get item_tag minecraft:logs

Fluid:

/repint matter get fluid minecraft:lava

Mekanism:

# 1.21.1
/repint matter get chemical mekanism:oxygen
/repint matter get chemical_tag c:gases/oxygen

# 1.20.1
/repint matter get gas mekanism:oxygen
/repint matter get gas_tag mekanism:oxygen

You can also view only a specific matter type.

/repint matter get item minecraft:diamond precious
/repint matter get item minecraft:ender_pearl ender

Matter types:

earth, nether, organic, ender, metallic, precious, living, quantum

deny

deny clears the matter value for the target. Explicit matter values are ignored.

/repint matter deny item minecraft:bedrock
/repint matter deny item_tag minecraft:logs
/repint matter deny fluid minecraft:lava

Mekanism:

# 1.21.1
/repint matter deny chemical mekanism:spent_nuclear_waste

# 1.20.1
/repint matter deny gas mekanism:spent_nuclear_waste

If you believe a material family should never be replicated, deny is the safest first choice.

set

set assigns an explicit matter value.

/repint matter set item minecraft:diamond precious 64
/repint matter set item_tag minecraft:logs organic 8
/repint matter set fluid minecraft:lava nether 0.001

Setting a matter type to 0 removes that type from the explicit values.

/repint matter set item minecraft:diamond precious 0

You can also specify all matter types at once.

/repint matter set item minecraft:nether_star all earth 0 nether 0 organic 0 ender 128 metallic 0 precious 256 living 0 quantum 64

reset

reset removes runtime overrides.

/repint matter reset item minecraft:bedrock
/repint matter reset item_tag minecraft:logs

Recipe calculations, Replication matter values, Replicated Integration supplemental values, config, and KubeJS values remain. Use this to undo temporary command adjustments.

commit

Changes made by commands are first saved as world-specific runtime overrides.

<world>/data/replicated_integration/matter_overrides.json

Running /repint commit moves the runtime overrides to the shared config.

/repint commit

Saved to:

config/replicated_integration-matter_overrides.json

Values saved in config are used in other worlds as shared pack settings.

Priority

Matter values come from multiple places. Later entries are stronger.

  1. Replicated Integration supplemental node values
  2. Replication matter value recipe
  3. config override
  4. KubeJS override
  5. runtime override

Within the same priority, later rules win. KubeJS can deny in bulk and then set a subset back.

Tag and mod-level adjustments

For pack tuning, tag- or mod-level selectors are more convenient than single items.

Example:

/repint matter deny item_tag c:storage_blocks/raw_uranium
/repint matter set item_tag c:ingots/silver metallic 16

KubeJS can also target entire mods.

RepIntEvents.matter(event => {
  event.deny(RepInt.itemMod("some_mod"))
  event.set(RepInt.item("some_mod:balanced_item"), { metallic: 32 })
})

Relationship with Replication tags

Replication tags affect whether items can be replicated or disintegrated.

  • replication:cant_be_scanned: cannot be scanned and therefore not replicatable.
  • replication:cant_be_disintegrated: cannot be disintegrated.
  • replication:skip_calculation: clears Replication-side calculations. Replicated Integration respects this conservatively in 1.21.1.
  • replication:ignore_crafting_result: ignores crafting remaining items. Replicated Integration respects this conservatively in 1.21.1.

If you only want to stop matter calculation, /repint matter deny or KubeJS event.deny(...) expresses the intent more clearly.

Checking with Replication Index

The Replication Index is convenient for in-game checks.

  • R: show only replicatable items.
  • D: show only disintegratable items.
  • Rep: rounding display close to Replication consumption.
  • Exact: display close to calculated values, with precise values in tooltips.

While tuning a pack, reopen the Index after command changes to verify the result.

Notes

Replicated Integration does not account for recipe energy cost, time, machine tier, or equipment difficulty.

As a result, materials that require expensive machinery can look cheap in matter calculations. Deny them or set a higher explicit value.

日本語

この文書は、modpack 作者が Replicated Integration の matter value を調整するためのメモです。内部実装ではなく、pack のバランスを整えるために必要な操作だけを扱います。

基本方針

Replicated Integration は、まず対応 mod のレシピを読み、入力素材から出力素材の matter value を推定します。

その結果が pack の意図に合わない場合は、次の順番で調整すると楽です。

  1. /repint matter get ... で現在の値を見る。
  2. /repint matter deny ... で複製させたくないものを止める。
  3. /repint matter set ... で明示値を試す。
  4. 良さそうなら /repint commit で config に保存する。
  5. まとまったルールは KubeJS に移す。

matter の確認

単体のアイテム:

/repint matter get item minecraft:diamond

タグ:

/repint matter get item_tag minecraft:logs

流体:

/repint matter get fluid minecraft:lava

Mekanism:

# 1.21.1
/repint matter get chemical mekanism:oxygen
/repint matter get chemical_tag c:gases/oxygen

# 1.20.1
/repint matter get gas mekanism:oxygen
/repint matter get gas_tag mekanism:oxygen

特定の matter type だけを見ることもできます。

/repint matter get item minecraft:diamond precious
/repint matter get item minecraft:ender_pearl ender

matter type:

earth, nether, organic, ender, metallic, precious, living, quantum

deny

deny は、その対象の matter value を空にします。明示 matter value があっても無視されます。

/repint matter deny item minecraft:bedrock
/repint matter deny item_tag minecraft:logs
/repint matter deny fluid minecraft:lava

Mekanism:

# 1.21.1
/repint matter deny chemical mekanism:spent_nuclear_waste

# 1.20.1
/repint matter deny gas mekanism:spent_nuclear_waste

「この素材系列は複製されるべきではない」と思ったら、まず deny が一番安全です。

set

set は対象に明示 matter value を与えます。

/repint matter set item minecraft:diamond precious 64
/repint matter set item_tag minecraft:logs organic 8
/repint matter set fluid minecraft:lava nether 0.001

同じ対象に対して matter type を 0 にすると、その matter type は明示値から外れます。

/repint matter set item minecraft:diamond precious 0

全 matter type をまとめて指定することもできます。

/repint matter set item minecraft:nether_star all earth 0 nether 0 organic 0 ender 128 metallic 0 precious 256 living 0 quantum 64

reset

reset は runtime override を消します。

/repint matter reset item minecraft:bedrock
/repint matter reset item_tag minecraft:logs

レシピ計算、Replication の matter value、Replicated Integration が同梱している補助値、config、KubeJS の値は残ります。コマンドで一時的に触った分だけ戻したいときに使います。

commit

コマンドで行った変更は、まずワールドごとの runtime override として保存されます。

<world>/data/replicated_integration/matter_overrides.json

/repint commit を実行すると、runtime override が共通 config に移されます。

/repint commit

保存先:

config/replicated_integration-matter_overrides.json

config に保存した値は、別ワールドでも同じ pack 設定として使われます。

優先順位

matter value は複数の場所から来ます。後ろほど強いです。

  1. Replicated Integration の補助 node value
  2. Replication の matter value recipe
  3. config override
  4. KubeJS override
  5. runtime override

同じ優先順位の中では、後に追加されたルールが勝ちます。KubeJS で「大きく deny してから一部だけ set し直す」ような書き方ができます。

タグと mod 単位の調整

pack 調整では、単体アイテムよりタグや mod 単位の指定が便利です。

例:

/repint matter deny item_tag c:storage_blocks/raw_uranium
/repint matter set item_tag c:ingots/silver metallic 16

KubeJS では mod 単位の指定もできます。

RepIntEvents.matter(event => {
  event.deny(RepInt.itemMod("some_mod"))
  event.set(RepInt.item("some_mod:balanced_item"), { metallic: 32 })
})

Replication 側タグとの関係

Replication のタグは、複製や分解の可否に影響します。

  • replication:cant_be_scanned: スキャン不可。複製対象にしない。
  • replication:cant_be_disintegrated: 分解不可。
  • replication:skip_calculation: Replication 側の計算を空にする。Replicated Integration も 1.21.1 では消極的に尊重します。
  • replication:ignore_crafting_result: クラフト残余アイテムの差し引きを無視する。Replicated Integration も 1.21.1 では消極的に尊重します。

pack 側で matter を止めたいだけなら、基本的には /repint matter deny や KubeJS の event.deny(...) のほうが意図を表しやすいです。

Replication Index での確認

ゲーム内確認には Replication Index が便利です。

  • R: 複製可能なアイテムだけを見る。
  • D: 分解可能なアイテムだけを見る。
  • Rep: Replication の実消費に近い丸め表示。
  • Exact: 計算値に近い表示。厳密な値は tooltip。

pack の調整中は、コマンドで変更してから Index を開き直すと確認しやすいです。

注意

Replicated Integration はレシピのエネルギーコスト、時間、機械の段階、設備の難易度を基本的には見ません。

そのため、高コスト機械でだけ作れる素材が、matter 計算上は安く見えることがあります。そういう素材は deny するか、明示値を高めに設定してください。