Перейти к содержимому
Mineforgian

RetroAPI

Block, Item, Recipe, Entity, Dimension Registration API for Legacy Minecraft. Supports Ornithe and Babric. Optionally Works with StationAPI.

Загрузки
82
Подписчики
0
Обновлён
7 июля 2026 г.
Лицензия
MIT

Опубликован 23 марта 2026 г.

RetroAPI

RetroAPI is a content-registration library for Minecraft Beta 1.7.3 that lets mods add blocks, items, recipes, entities, dimensions and more without requiring StationAPI. It runs on Ornithe (Fabric Loader + OSL) and Babric, and transparently delegates to StationAPI when that mod is also installed.

Developer Portal

To start developing for b1.7.3 with it go here!
https://matthewperiut.github.io/retroapi/index.html

What it implements

Registration

  • Custom blocks and items with automatic, stable ID assignment - block IDs are expanded well past the vanilla 256 cap, and assignments persist across loads.
  • Block entities without subclassing BlockWithBlockEntity (RetroBlockEntityType).
  • Inventory / menu GUIs (chest, furnace and dispenser styles) with automatic slot sync (@SyncField).
  • Crafting, smelting and furnace-fuel recipes (RetroRecipes).
  • Custom entities with renderers, and custom dimensions reached through walk-in portal blocks.
  • Achievements and achievement pages.
  • Sound autoloading and automatic lang / translation generation.

Rendering

  • Expanded texture atlas plus custom block and item renderers and render types.

Vanilla-safe world storage (sidecar system)

  • All modded content is written to retroapi/ sidecar files keyed by string identifiers, so a world can be opened in vanilla without crashing or losing data and reopened in RetroAPI intact.
  • Covers extended block IDs, modded block entities, modded items inside vanilla containers, and dropped item entities.

Multiplayer

  • OSL-based networking with server-to-client ID mapping sync and extended-block chunk sync.

StationAPI compatibility (optional, bundled)

  • Ships a retroapi-stationapi companion that loads only when StationAPI is also present and delegates registration, rendering, dimensions and world conversion to StationAPI. With it, RetroAPI worlds round-trip through StationAPI's flattened world format without data loss.

Both jars include the StationAPI compatibility layer; it activates automatically if StationAPI is installed and stays dormant otherwise.

Ченджлог

0.2.3+babricБетаb1.7.3 · 7 июля 2026 г.

Sharper tools & tags.

  • Custom tools now work on vanilla blocks: beta-accurate mineable/{pickaxe,axe,shovel} and needs_{stone,iron,diamond}_tool defaults, so a plain .tool(PICKAXE).tier(IRON) item mines vanilla iron ore at iron speed, not just modded ores.
  • mineable tags now grant speed only; whether a block needs a tool to drop comes from its material or a needs_<tier>_tool tag (matches modern MC). Behavior change: .mineable(...) alone no longer gates drops on a hand-breakable material.
  • Multi-kind tools (.tool(PICKAXE, AXE) paxels) and dynamic runtime tier (.tier(stack -> ...)). Declared plain-item tools mine at their tier's speed. Added RetroTool.SHEARS.
  • Item tags plus arbitrary runtime-mutable tags for items and blocks; reads StationAPI's tag layouts and vanilla flattening names.
  • Layered sprites with no model JSON: .layers(base, overlays...) / .overlay(id).
  • .facing() blocks: built-in orient-to-placer on placement, no custom enum or onPlaced.
  • Ergonomics: interface injection (no RetroBlockAccess/RetroItemAccess casts) and constructor factories (RetroBlockAccess.of(Ctor::new)).
  • StationAPI compatibility: clean hand-off of vanilla harvesting when StationAPI is present. See STATIONAPI_TAG_COMPAT.md.

Built and validated against StationAPI 2.0.0-alpha.6.2 for b1.7.3 (Ornithe). All features exercised by the headless populate self-check.

0.2.3Бетаb1.7.3 · 7 июля 2026 г.

Sharper tools & tags.

  • Custom tools now work on vanilla blocks: beta-accurate mineable/{pickaxe,axe,shovel} and needs_{stone,iron,diamond}_tool defaults, so a plain .tool(PICKAXE).tier(IRON) item mines vanilla iron ore at iron speed, not just modded ores.
  • mineable tags now grant speed only; whether a block needs a tool to drop comes from its material or a needs_<tier>_tool tag (matches modern MC). Behavior change: .mineable(...) alone no longer gates drops on a hand-breakable material.
  • Multi-kind tools (.tool(PICKAXE, AXE) paxels) and dynamic runtime tier (.tier(stack -> ...)). Declared plain-item tools mine at their tier's speed. Added RetroTool.SHEARS.
  • Item tags plus arbitrary runtime-mutable tags for items and blocks; reads StationAPI's tag layouts and vanilla flattening names.
  • Layered sprites with no model JSON: .layers(base, overlays...) / .overlay(id).
  • .facing() blocks: built-in orient-to-placer on placement, no custom enum or onPlaced.
  • Ergonomics: interface injection (no RetroBlockAccess/RetroItemAccess casts) and constructor factories (RetroBlockAccess.of(Ctor::new)).
  • StationAPI compatibility: clean hand-off of vanilla harvesting when StationAPI is present. See STATIONAPI_TAG_COMPAT.md.

Built and validated against StationAPI 2.0.0-alpha.6.2 for b1.7.3 (Ornithe). All features exercised by the headless populate self-check.

0.2.2+babricБетаb1.7.3 · 14 июня 2026 г.

Fix w stationapi registration crash

0.2.2Бетаb1.7.3 · 14 июня 2026 г.

Fix w stationapi registration crash

0.2.1+babricБетаb1.7.3 · 14 июня 2026 г.

Fix registration issues

0.2.1Бетаb1.7.3 · 14 июня 2026 г.

Fix registration issues

0.2.0+babricБетаb1.7.3 · 9 июня 2026 г.

RetroAPI 0.2.0

RetroAPI is a content-registration library for Minecraft Beta 1.7.3 that lets mods add blocks, items, recipes, entities, dimensions and more without requiring StationAPI. It runs on Ornithe (Fabric Loader + OSL) and Babric, and transparently delegates to StationAPI when that mod is also installed.

What it implements

Registration

  • Custom blocks and items with automatic, stable ID assignment - block IDs are expanded well past the vanilla 256 cap, and assignments persist across loads.
  • Block entities without subclassing BlockWithBlockEntity (RetroBlockEntityType).
  • Inventory / menu GUIs (chest, furnace and dispenser styles) with automatic slot sync (@SyncField).
  • Crafting, smelting and furnace-fuel recipes (RetroRecipes).
  • Custom entities with renderers, and custom dimensions reached through walk-in portal blocks.
  • Achievements and achievement pages.
  • Sound autoloading and automatic lang / translation generation.

Rendering

  • Expanded texture atlas plus custom block and item renderers and render types.

Vanilla-safe world storage (sidecar system)

  • All modded content is written to retroapi/ sidecar files keyed by string identifiers, so a world can be opened in vanilla without crashing or losing data and reopened in RetroAPI intact.
  • Covers extended block IDs, modded block entities, modded items inside vanilla containers, and dropped item entities.

Multiplayer

  • OSL-based networking with server-to-client ID mapping sync and extended-block chunk sync.

StationAPI compatibility (optional, bundled)

  • Ships a retroapi-stationapi companion that loads only when StationAPI is also present and delegates registration, rendering, dimensions and world conversion to StationAPI. With it, RetroAPI worlds round-trip through StationAPI's flattened world format without data loss.

Downloads

  • Ornithe - retroapi-0.2.0.jar (requires OSL).
  • Babric - retroapi-0.2.0-babric.jar (self-contained: OSL is bundled in).

Both jars include the StationAPI compatibility layer; it activates automatically if StationAPI is installed and stays dormant otherwise.

0.2.0Бетаb1.7.3 · 9 июня 2026 г.

RetroAPI 0.2.0

RetroAPI is a content-registration library for Minecraft Beta 1.7.3 that lets mods add blocks, items, recipes, entities, dimensions and more without requiring StationAPI. It runs on Ornithe (Fabric Loader + OSL) and Babric, and transparently delegates to StationAPI when that mod is also installed.

What it implements

Registration

  • Custom blocks and items with automatic, stable ID assignment - block IDs are expanded well past the vanilla 256 cap, and assignments persist across loads.
  • Block entities without subclassing BlockWithBlockEntity (RetroBlockEntityType).
  • Inventory / menu GUIs (chest, furnace and dispenser styles) with automatic slot sync (@SyncField).
  • Crafting, smelting and furnace-fuel recipes (RetroRecipes).
  • Custom entities with renderers, and custom dimensions reached through walk-in portal blocks.
  • Achievements and achievement pages.
  • Sound autoloading and automatic lang / translation generation.

Rendering

  • Expanded texture atlas plus custom block and item renderers and render types.

Vanilla-safe world storage (sidecar system)

  • All modded content is written to retroapi/ sidecar files keyed by string identifiers, so a world can be opened in vanilla without crashing or losing data and reopened in RetroAPI intact.
  • Covers extended block IDs, modded block entities, modded items inside vanilla containers, and dropped item entities.

Multiplayer

  • OSL-based networking with server-to-client ID mapping sync and extended-block chunk sync.

StationAPI compatibility (optional, bundled)

  • Ships a retroapi-stationapi companion that loads only when StationAPI is also present and delegates registration, rendering, dimensions and world conversion to StationAPI. With it, RetroAPI worlds round-trip through StationAPI's flattened world format without data loss.

Downloads

  • Ornithe - retroapi-0.2.0.jar (requires OSL).
  • Babric - retroapi-0.2.0-babric.jar (self-contained: OSL is bundled in).

Both jars include the StationAPI compatibility layer; it activates automatically if StationAPI is installed and stays dormant otherwise.

Комментарии

Загружаем…