promotional bannermobile promotional banner

SCP CoreLib

A utility mod I use for all my SCP mods
Back to Files

SCP CoreLib 1.0.3.0

File namescp_core-1.0.3.0.jar
Uploaded
May 28, 2026
Downloads
19
Size
297.2 KB
Mod Loaders
Forge
File ID
8157609
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:scp-corelib-1552194:8157609")

Learn more about Curse Maven

What's new

Added — Temperature system

  • Temperature: per-position °C value derived from biome, altitude lapse, sources, fields, and entity armor.
  • TemperatureField: spherical or box-shaped zones, additive deltas or absolute overrides (sealed cells), optional fade. Anchor to a fixed position or to a moving entity. Same builder shape as HumeField.
  • TemperatureManager API: getTemperature, getBodyTemperature(entity), addField / removeField / removeFieldsBySource, setBiomeBaselineOverride, fillZone (flood-fill sealed-volume detector for fridges/freezers), plus block/entity watchers (WatchedTemperatureBlock, WatchedTemperatureEntity) that fire on change.
  • BiomeTemperatures: every vanilla 1.20.1 biome registered with a realistic °C baseline. Plains 15, desert 35, snowy plains −8, ice spikes −20, jagged peaks −22, warm ocean 28, Nether Wastes 80, basalt deltas 110, End −20.
  • Altitude lapse rate: −1°C per 10 blocks above sea level (skipped in Nether/End). Mountains get genuinely cold.
  • TemperatureSources: per-block ±°C contribution registry with radius, fade, and per-type cap so stacks of the same block can't drive the local temperature past a sane ceiling. Built-ins: campfire +22, soul campfire +14, lava +40, fire +20, magma +15, torch +3, ice −8, packed ice −18, blue ice −28, snow block −5.
  • Insulators: per-block registry that attenuates source contributions along the line of sight by ~30% per insulator block. Wool (any color), stone, cobblestone, deepslate, cobbled deepslate.
  • ArmorTemperature: per-armor-item flat °C delta. Leather set +20 (warmth), gold set −28 (cooling), turtle shell helmet −10 (cooling).
  • ArmorStabilization: new multiplicative mechanic — pulls body temp toward 20°C by a percentage. Full netherite set = 100% stabilize → body always 20°C regardless of surroundings.
  • BlockReactions: water freezes below −15°C (5°F), boils above 38°C (100°F), ice melts above −11°C (10°F), lava cools to obsidian below 30°C, obsidian remelts to lava above 80°C. Hysteresis gap prevents flicker.
  • Damage: freezes below 0°C using vanilla powdered-snow visual, burns above 32°C (no fire animation). Players always affected; non-player mobs opt in via TemperatureSensitive.
  • Game rule doTemperatureDamage toggles both damage paths.

Added — Items / blocks

  • Thermometer: right-click reports ambient temp, body temp, and biome baseline in the action bar.
  • Hume Indicator block: red-dust particle density scales with local Hume reading; color shifts cooler when drained, brighter when boosted. Showcases a Hume-gated recipe station.

Added — Memetic system

  • Memetic base class: a perception-borne effect tracked per-{@link LivingEntity}. Each declares whether it's cancelable, whether it persistsThroughDeath, and whether it's curableByAmnestic.
  • MemeticManager API: register, apply, cancel, cure, amnestic(entity) (wipes every curable memetic), has, get, getAll.
  • Seen-tracking: markSeen(memetic, observer) / getSeenBy(memetic) → Set<UUID>. An entity that has perceived a memetic source can be looked up later for area cleansers, amnestic dispatchers, etc.
  • Update listeners: addUpdateListener fires on every state change (APPLIED / EXPIRED / CANCELLED / CURED / DEATH_WIPED) so HUDs, audit logs, or world events can react when an amnestic actually works.
  • Built-in memetic: HALLUCINATION — vanilla nausea + blindness, cancelable, curable, lost on death.
  • Memetic Hazard Block: sculk-textured. Looking at it marks you as a seen observer, applies HALLUCINATION, and deals 1 damage. Properly suppressed while blinking (uses the existing sight tracker).
  • Amnestic Stick: debug item. Right-click wipes every curable memetic on you.

Added — Armor protection (for downstream mods)

  • ProtectionKind registry: hazmat / radiation / memetic / gas-mask / thermal. Mods register their own.
  • ProtectionRegistry: per-item defaults + per-stack NBT overrides; getTotalProtection(entity, kind), getSlotProtection(entity, slot, kind), isProtected(entity, kind, threshold).
  • Debug Helmet (iron-helmet visual with GAS_MASK = 5) and Gas Hazard Block (10-block aura, damages anyone without head-slot gas-mask protection) for testing.

Added — UI / config

  • Client config temperatureUnit: Celsius (default) or Fahrenheit. Affects all displays; thresholds remain Celsius internally.
  • Client config showHeatTint: toggle the full-screen red heat overlay without disabling damage.
  • Heat tint overlay: appears at the burn threshold, intensity scales with how hot you are, pulses at 5°C+ overage, tweens smoothly in and out.
  • Tooltips on every item registered with the temperature or Hume systems — colored lines on armor (red/aqua/purple for heat/cooling/stabilize) and on source blocks (Heat source: +22°C over 5b, Hume source: -4 over 3b).

This mod has no related projects