Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/hbmmods/hbm-s-nuclear-tech-git/llms.txt

Use this file to discover all available pages before exploring further.

Radiation in NTM is not a simple visual effect or a single damage type — it is a layered simulation that tracks individual isotope activity, accumulates contamination in the player’s body over time, spreads into chunks as a persistent world state, and interacts with the environment to kill grass, accelerate mycelium, and generate toxic fog. Every radioactive item in the game is assigned a precise RAD/s emission value based on real isotope half-lives, and the hazard system is extensible enough to cover non-radiological dangers like asbestos, extreme heat, hydrothermal reactivity, and chemical toxins — all configurable and individually disableable in the server config.

RADs Per Second: How Radioactivity Is Measured

NTM expresses radioactivity as RADs per second (RAD/s) applied to nearby entities. The values are defined in HazardRegistry as static float constants, cross-referenced against real-world isotope half-lives:
IsotopeHalf-lifeRAD/s
Th-23214,000,000,000 years0.10
U-2384,500,000,000 years0.25
U-235700,000,000 years1.00
U-233160,000 years5.00
Np-2372,100,000 years2.50
Pu-23924,000 years5.00
Pu-2406,600 years7.50
Am-241432 years8.50
Cs-13730 years20.00
Co-605 years30.00
Pu-24114 years25.00
Po-210138 days75.00
Au-19864 hours500.00
Pb-2093 hours10,000.00
These constants (e.g. HazardRegistry.u238 = 0.25F, HazardRegistry.po210 = 75.0F) are referenced when assigning radiation entries to items and blocks in HazardRegistry’s initialisation code. The HazardTypeRadiation.onUpdate() method converts the per-tick level to a per-second rate (float rad = level / 20F) and passes it to ContaminationUtil.contaminate().
Radioactive items cause radiation damage even while sitting in your inventory. A stack of polonium or high-grade plutonium can irradiate you through your hotbar without ever being placed or used. Always store radioactive materials in shielded containers and wear appropriate protection.

HazardRegistry: Where Hazard Values Are Defined

HazardRegistry is the central registry that maps ItemStacks (and OreDict entries) to HazardEntry objects, each describing the type and magnitude of hazard an item poses. The registry is populated during mod initialisation and covers:
  • Radiation — all radioactive ores, ingots, nuggets, billets, fuels, and spent fuels
  • Heat — items that burn or cause fire damage when held
  • Asbestos — materials that cause lung damage (fibrosis) on prolonged exposure
  • Explosive — unstable items that can detonate under certain conditions
  • Hydroactive — materials that react violently with water
  • Blinding — items emitting intense light capable of causing blindness
  • Chemical/Poison — toxic substances that apply poison effects
The HazardSystem evaluates all held and nearby items each tick and applies the cumulative effect to the player.

Chunk Radiation: Persistent World Contamination

Beyond item-level radiation, NTM tracks chunk-level radiation as a persistent value stored in chunk NBT. Nuclear explosions, leaking reactor cores, and radioactive block placements all contribute to chunk radiation. Once a chunk is contaminated, players standing in it receive background RAD/s even with no radioactive items nearby.
Explosions from nuclear devices deposit radiation into affected chunks proportional to the device’s yield. Placing radioactive blocks (e.g. uranium ore, glowing cores) also raises local chunk radiation over time. The enableContamination config toggle controls whether the player’s body contamination system is active; enableChunkRads controls whether chunk-level radiation accumulates and deals damage at all.
When chunk radiation exceeds the worldRadThreshold (default: 20 RADs) and worldRadEffects is enabled, the world itself begins to change. Grass dies and turns to dirt, mycelium spreads, and further decay can occur. The worldRad config value (default: 10) controls how many block operations radiation can perform per tick. If cleanupDeadDirt is enabled, dead grass and mycelium eventually decay back to plain dirt.
When a player accumulates ≥fogRad RADs (default: 100), a radioactive fog begins to appear. The fogCh value (default: 20) sets the 1-in-N chance of fog spawning every second. Fog is a visual warning system that intensifies as contamination increases.

PRISM: 3D Radiation Propagation

The standard chunk radiation system treats all blocks within a chunk as uniformly affected. PRISM (Physically-based Radiation Integration and Shielding Model) is an advanced, toggleable replacement that simulates radiation propagation in three dimensions, accounting for block-level shielding resistance:
enablePRISM = false  (default)
When enablePRISM = true, the ChunkRadiationManager swaps its proxy to ChunkRadiationHandlerPRISM. This system casts radiation from sources outward through the block grid, attenuating based on material density — lead walls block more radiation than air, concrete more than wood, and so on.
PRISM is disabled by default because it is significantly more computationally expensive than the chunk-average system. Enable it only on servers with adequate hardware or in single-player where performance allows.

Radiation Effects on the Player

Radiation accumulates in the player as contamination, tracked by ContaminationUtil. As contamination rises through thresholds, the following effects apply:
1

Mild Contamination

Slight nausea, minor health regeneration penalty. Visible via the contamination HUD indicator. Recoverable with radiation medicine or simply by removing the radiation source and waiting.
2

Moderate Contamination (Radiation Sickness)

Active health drain, reduced max health, nausea, and hunger loss. The player visibly deteriorates. Anti-rad medication slows accumulation; decontamination showers (if available) accelerate recovery.
3

Severe Contamination (Fatal)

Sustained RAD/s above lethal thresholds will kill unprotected players. At extreme levels (e.g. standing next to Pb-209 with 10,000 RAD/s), death can occur within seconds.
The Nether has a baseline ambient radiation of hellRad RAD/s (default: 0.1), representing the hostile dimension’s naturally radioactive environment.

Protection Against Radiation

Protection MethodNotes
Lead ArmorReduces radiation intake proportional to coverage. Full set strongly recommended for reactor work.
Hazmat SuitsFull-body protection against radiation and some chemical hazards. Required for entering highly contaminated areas.
Rad-X / RadAway equivalentsNTM includes medication items that slow contamination gain (prophylactic) or accelerate clearance (treatment).
DistanceRadiation falls off with distance. The Geiger counter item (reacher) applies a square-root or inverse-square function to attenuate inventory radiation.
Shielding BlocksDense materials (lead blocks, concrete) between you and a radiation source reduce exposure, especially with PRISM enabled.

All Hazard Types

RadiationConfig exposes per-hazard disable toggles. The following hazard types are implemented in com.hbm.hazard.type:
Hazard TypeClassConfig ToggleDescription
RadiationHazardTypeRadiationenableContaminationIsotope-based RAD/s contamination
AsbestosHazardTypeAsbestosdisableAsbestosFibrosis lung damage from fibrous minerals
Coal DustHazardTypeCoaldisableCoalPneumoconiosis from coal dust exposure
HeatHazardTypeHotdisableHotFire damage from hot materials/fluids
ExplosiveHazardTypeExplosivedisableExplosiveDetonation risk from unstable items
HydroactiveHazardTypeHydroactivedisableHydroViolent water reactivity
BlindingHazardTypeBlindingdisableBlindingBlindness from intense light sources
FibrosisHazardTypeAsbestosdisableFibrosisProgressive lung disease from fine particles (separate toggle from asbestos)
DigammaHazardTypeDigammaExotic high-energy radiation type (applies DRX/s contamination)

Pollution System

Separate from radiation, NTM models industrial pollution via PollutionHandler. Pollution types include soot (from combustion), heavy metals (from lead and similar), and airborne toxins:
When soot pollution in a chunk exceeds sootFogThreshold (default: 35), visible smog appears. The density scales with the sootFogDivisor config. Smoke stacks multiply soot output by smokeStackSootMult (default: 0.8, slightly reducing raw emissions — configure upward to penalise industrial activity more heavily).
High heavy-metal pollution (from lead, mercury, etc.) poisons players simply by standing in the affected area (enableLeadPoisoning). Breaking blocks in heavily polluted chunks can also deliver a poison dose (enableLeadFromBlocks).
When soot exceeds buffMobThreshold (default: 15), naturally spawning mobs in the area receive stat buffs — a punishing effect for heavily industrialised areas left unmanaged.

Radiation Config Reference

All radiation and hazard settings live in RadiationConfig, loaded from hbm.cfg:
# Minimum RADs before fog spawns
FOG_00_threshold = 100

# 1:N chance of fog per second
FOG_01_threshold = 20

# Ambient RAD/s in the Nether
AMBIENT_00_nether = 0.1

# Enable chunk-level radiation
RADIATION_01_enableChunkRads = true

# Enable player contamination and sickness
RADIATION_00_enableContamination = true

# Enable 3D PRISM radiation propagation (expensive)
RADIATION_99_enablePRISM = false

# World block modification from radiation
RADWORLD_00_toggle = true
RADWORLD_02_minimum = 20

Build docs developers (and LLMs) love