Radio Craft

RadioCraft adds a placeable internet radio block that streams MP3 over HTTP, a station editor, volume/range, and activation modes (right‑click, redstone, always on). Audio plays on the client only.

File Details

radiocraft-1.1.0.jar

  • R
  • Apr 21, 2026
  • 413.13 KB
  • 19
  • 1.16.5
  • Forge

File Name

radiocraft-1.3.0.jar

Supported Versions

  • 1.16.5

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:radio-craft-1520206:7962880")
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

# RadioCraft — Changelog

Version in `gradle.properties`: `mod_version` (default is currently 1.0.0). Bump it to match the release you ship.

## [1.1.0] — 2026-04-21

### Added
- **Cassette Maker** (`cassette_maker`) — block with GUI: cassette slot, label, stream URL, write-to-tape button, local file browse.
- **Cassette** (`radio_cassette`) — programmable tape (NBT); insert into a radio after confirmation; in the editor: “cassette loaded” state and **Eject cassette** button.
- Recipes: Cassette Maker, cassettes (craft yields 2); block `loot_tables`; textures & models (generator: `scripts/generate_texture_bitmaps.py`).
- Networking: `CassetteWritePacket`, `CassetteInsertRadioPacket`, `RadioEjectCassettePacket`; `cassetteInserted` synced in `RadioSyncPacket`.
- `CassetteMakerContainer` + `CassetteMakerScreen`; client registration in `RadioCraftClientSetup`.

### Fixed / UX
- **Quit to title / disconnect** — radio streams stop when the client world unloads (`WorldEvent.Unload`) so audio does not keep playing in menus.
- **Stream clicks / “beeps”** — larger `SourceDataLine` PCM buffer (~200 ms), fewer underrun glitches under GC or game load than with a very small buffer.
- **Radio & Cassette Maker placement** — facing follows **player look direction**, not the clicked block face (consistent front toward the player).
- **Ejecting a cassette** — radio restores **station name and URL from before the tape was inserted** (NBT: `PreCassetteStation`, `PreCassetteUrl`); the returned item still holds the tape’s programmed data.

### Changed (GUI / localization)
- Shared panel styling (`RadioGuiHelper`): frame, label colors, headers.
- Radio settings: loop & mode labels; tooltips on URL, volume, and range fields.
- Manual: panel layout, chapter titles (`guide.chapter1`–`5`), spacing, Prev/Next disabled on first/last page.
- PL / EN strings for cassettes, insert confirmation, and Cassette Maker container.

---

## [1.0.0] — earlier baseline

Initial public feature set: radio (MP3 streams / playlists / local files), editor, server presets, audio upload, activation & redstone modes, tuner / trap circuit, guidebook, etc.